简介
教程
Seata官网 //《Seata v1.3 使用教程》 - 书栈网 · BookStack
深度解析!--阿里开源分布式事务框架Seata - InfoQ 写作平台
demo
官方demo:https://github.com/seata/seata-samples
得与失
分布式事务选型的取舍-InfoQ
版本
版本说明 · alibaba/spring-cloud-alibaba Wiki · GitHub
AT与TCC区别
项 | AT | TCC |
性能 | 性能差。 (基于2PC,锁粒度大,额外SQL(比如记录redolog)很多) | 性能好。 不依赖本地事务也不需要额外的其他操作。 |
灵活性 | 灵活性低。 依赖数据事务与数据库连接,并且提交与回滚逻辑由Seata框架自动完成。 | 灵活度高。 不依赖数据库本地事务,提交与回滚完全由自己控制。 |
代码侵入性 | 侵入性低。 通过Spring AOP、自动装配与注解等技术,生成JDBC数据源代理,并对业务方法进行拦截,自动实现分布式事务的处理,业务代码只需标注注解即可,对数据库也只需添加一张新的表。 | 侵入性高。 要将业务代码拆分为3个方法,每个方法都要进行业务的重构,对数据库要增加资源预留字段。 |
AT与XA
区别
XA:锁在多侧(多个库),资源阻塞,性能差。
AT:把事务的实现决定权从数据库手中,放到了Seata中,自实现sql解析,自实现undolog(redolog)。
原理
其他网址
Seata TCC 分支事务 | 贝克街的流浪猫