本文将会对比Seata与EasyTransaction两个分布式事务的一些高层设计,相信大家会有收获。
Seata的概述
Seata(曾用名Fescar,开源版本GTS)是阿里的开源分布式事务框架,其RoadMap中指出了其希望与社区合作重新构建出一个全面的分布式事务框架。
关于Seata的相关介绍可以看这里,本文不再赘述。虽然其后续路线有所调整,但整体适用。
https://github.com/seata/seata/wiki/%E6%A6%82%E8%A7%88
学习了解Seata后我们可以比对着了解EasyTransaction的架构设计。
EasyTransaction概述
EasyTransaction(后简称ET)的目标也是构建出一个全面分布式事务解决方案,到目前为止其包含TCC,自动补偿(Seata AT),手动补偿,可靠事务消息、Saga事务等等多种形态。
下面将就两个框架在设计上的差异进行分析
核心差异图示
借用Seata的一张图:
与Seata不同,EasyTransaction对应的图如下:
TC差异
Seata: