分布式事务
1、servicecomb-saga 华为的
2、Seata 阿里的,开源,支持at(需要本地事务支持)和mt模式(不需要本地事务,MT模式本质上是一种TCC方案,业务逻辑需要被拆分为 Prepare/Commit/Rollback 3 部分)
3、shardingSphere 京东的,开源已经提交apache,定位为关系型数据库中间件,Apache ShardingSphere 5.x 版本开始致力于可插拔架构,项目的功能组件能够灵活的以可插拔的方式进行扩展。 目前,数据分片、读写分离、多数据副本、数据加密、影子库压测等功能,以及 MySQL、PostgreSQL、SQLServer、Oracle 等 SQL 与协议的支持,均通过插件的方式织入项目。 开发者能够像使用积木一样定制属于自己的独特系统。Apache ShardingSphere 目前已提供数十个 SPI 作为系统的扩展点,仍在不断增加中。
4、TCC-Transaction 开源,支持JDBC,redis等数据库,幂等框架不支持,不耦合prc框架
缺点:TCC为Try、Confirm、Cancel的缩写:try阶段预留资源尝试提交,confirm阶段确定提交,cancel取消提交释放资源。代码的嵌入性高,要求每个业务需要写三种步骤的操作。
5、LCN 开源:支持三种模式:LCN(本地事务支持),TCC,TXC(预先读取影响的数据,作为回滚的依据)三种模式,同5.0时添加的插件扩展机制,也就是说他更加开放了,他可以可以容纳更多的rpc框架,也可以更多的支持db框架,比如mongodb、redis,还有将来一些框架,如ES等等。
参考网址:
1、https://blog.csdn.net/gududedabai/article/details/83012487
2、https://blog.csdn.net/ningjiebing/article/details/89948050
3、https://www.cnblogs.com/lmyupupblogs/p/12499815.html