分布式事务解决方案--GTS(二)

186 阅读1分钟
  1. 场景

阿里云提供了一个经典分布式事务的场景

A 和 B 两个账户的数据分别位于两个RDS数据库中。A转账给B,转账10次,前5次成功,后5次失败。使用GTS事务保证A和B两个账户的总金额始终不变。

  1. 注解使用方式

目前GTS还处于公测阶段,想要使用的话,需要开通GTS服务。

开通 GTS 服务后,在开通完成页面右上方菜单栏中单击 控制台 或返回产品详情页单击 进入 GTS 控制台,可以直接进入GTS控制台,进行后续操作。

将样例工程压缩包拷贝到 ECS 实例上,并解压。

在 ECS 实例的样例工程安装目录(src\main\resources)下,找到并打开文件:txc-client-context.xml。

将两个数据源的 URL 中的 IP 地址替换为样例所在的 RDS 的内网地址。

image

将申请的事务分组名称(系统生成的名称)填写到 constructor-arg 的 value中;将 AccessKey 和 SecretKey的property分别替换为您阿里云账户的 Access Key ID 和 Access Key Secret。

image

  1. 验证

在样例工程根目录下,执行 build.sh/bat脚本。

构建完成后会自动跳转到运行脚本所在目录,执行 run.sh/bat 脚本来运行样例程序。

执行 run.sh/bat的终端窗口会打印样例程序运行的过程及结果信息。

看到程序正常并正确运行完成的信息,即说明成功调用了 GTS 服务。