如果您之前使用过 GTS 的旧版样例,仍然可以继续使用,不过推荐使用新版样例。

下载样例工程,将压缩包解开,可以看到基于 Maven 环境的样例工程。

基于不同使用场景和方式,划分为:

  • AT 模式下,在用户代码中使用注解接入分布式事务

    • sample-txc-simple:最简的 GTS 样例工程,该工程给出了一个最少依赖的 GTS 案例,GTS 使用入门必看。您可以基于 sample-txc-simple 样例工程,分别在阿里云网络及公网中搭建。具体使用步骤,请参见 sample-txc-simple 样例

    • sample-txc-mq:最简 GTS 样例的基础上,将 MQ 加入分布式事务,保证了数据库操作与消息发送的一致性。数据库操作提交,则消息一定发送成功;数据库操作回滚,则消息一定不会被发送出去。本案例是 GTS 和 MQ 综合实践的入门案例。具体使用步骤,请参见 sample-txc-mq 样例

    • sample-mq-consumer:该工程主要为上述案例中的 MQ 消息提供者(provider)提供一个消费者(consumer)案例,该工程不依赖 GTS,仅为方便用户理解 MQ 案例。

    • sample-txc-edas:在 EDAS 上使用 GTS 的案例,该案例综合了 GTS、EDAS 及 MQ 的使用,通过 Console 和 Web 两种方式充分展现了用户的使用场景,是 EDAS 上部署 GTS 的进阶案例,该案例可以让用户对 GTS 使用场景有更全面的理解。具体使用步骤,请参见 sample-txc-edas 样例

    • sample-txc-dubbo:在 Dubbo 框架下使用 GTS 的参考案例。该工程演示了通过 GTS 保证跨 Dubbo 服务分布式事务的一致性。您可以基于 sample-txc-dubbo 样例工程,分别在阿里云网络及公网中搭建。具体使用步骤,请参见sample-txc-dubbo 样例sample-txc-dubbo 样例(公网)

    • sample-txc-springboot:在 Spring Boot 框架下使用 GTS 的简单案例。该工程演示了在 SpringBoot 框架下通过 GTS 保证跨数据转账的分布式事务的一致性。具体使用步骤,请参见 sample-txc-springboot 样例

    • sample-txc-simple-springfree:在非 Spring 框架下使用 GTS 的简单案例。该工程演示了使用 API 的方式通过 GTS 保证跨数据转账的分布式事务的一致性。具体使用步骤,请参见 sample-txc-simple-springfree 样例

    • sample-txc-springcloud:在 Spring Cloud 框架下使用 GTS 的简单案例。该工程演示了在 Spring Cloud 框架下通过 GTS 保证跨数据转账的分布式事务的一致性。具体使用步骤,请参见 sample-txc-springcloud 样例

  • TCC 模式下,通过两阶段提交接入分布式事务

    • sample-txc-mt-compensat-simple:在 MT 模式下补偿型事务的简单使用方法。该工程演示了通过 GTS 保证 A、B 两个账户转账事务一致性的应用场景。具体使用步骤,请参见 sample-txc-mt-compensate-simple 样例

    • sample-txc-mt-reserve-simple:在 MT 模式下预留型事务的简单使用方法。该工程样例演示了如何通过 GTS 保证下订单、扣库存两个操作事务的一致性。具体使用步骤,请参见 sample-txc-mt-reserve-simple 样例