文章目录
- Seata 客户端集成 - 通用步骤及原理
-
- 第 1 步:添加 Seata 依赖
- 第 2 步:创建 undo_log 表
- 第 3 步:代理数据源
-
- 自动代理与手动代理
- 自动代理的两种方式
- 自动代理 方式1 - @EnableAutoDataSourceProxy实现原理
- 自动代理 方式2 - seata.enableAutoDataSourceProxy实现原理
- SeataDataSourceBeanPostProcessor 是如何实现自动代理的?
- 第 4 步:初始化GlobalTransactionScanner
-
- 第 5 步:实现xid跨服务传递
-
- 源码解读 - RestTemplate传递xid
- 源码解读 - SpringMVC传递xid
- 第 6 步:添加客户端配置文件
- 第 7 步:业务使用全局事务
- Spring Cloud 集成 Seata 客户端实例
-
- 准备工作 - 初始化数据库
- 第 1 步:添加Seata依赖
- 第 2 步:创建 undo_log 表
- 第 3 步:各种自动化配置
- 第 4 步:添加客户端配置文件
- 第 5 步:验证分布式事务是否生效
-
- 相关代码
- TM、RM 注册到 TC
- 提交全局事务
- 回滚全局事务
- 第 6 步:seata server 高可用验证
- Seata 客户端 - 进阶知识
-
- 事务分组
-
- 事务分组是什么?
- 通过事务分组如何找到TC集群?
- 为什么这么设计,不直接取真实的集群名称?
- 事务 API 支持
-
- High-Level API
-
- GlobalTransaction:全局事务
- GlobalTransactionContext:全局事务上下文
- TransactionalTemplate:事务模板
- Low-Level API
-
- RootContext:事务的根上下文
- 典型应用场景
- 附录:事务状态
-
- 参考
- 相关博文
目标 1:了解 Seata 客户端的集成原理(AT 模式)
目标 2:提供一个 Seata 客户端集成案例(AT 模式)- ganlan-cloud.zip
目标 3:验证分布式事务及服务端高可用是否生效
Seata 客户端集成 - 通用步骤及原理
第 1 步:添加 Seata 依赖
有如下三种添加 Seata 依赖的方式:
方式 |
说明 |
方式 1:添加seata-all 依赖 |
适合传统 Spring 项目 |
方式 2:添加 seata-spring-boot-starter 依赖 |
适合 SpringBoot 项目 + 支持 yml、properties 配置< |