分布式事务方案分类汇总

分布式事务方案分类

目前分布式事务解决的方案主要有对业务无入侵和有入侵的方案.

业务无侵入的方案

无入侵方案主要有基于数据库 XA 协议的两段式提交(2PC)方案和蚂蚁金服开源的Seata AT 模式。

分布式事务方案 常用实践框架 相关阅读
数据库 XA 各个数据库厂商实现XA协议
Seata AT Seata AT 模式 分布式事务中间件Seata的设计原理
Seata AT 模式
Seata XA Seata XA 模式 Seata 分布式事务实践和开源详解

基于数据库 XA 协议方案优缺点:

  • 优点是对业务代码无入侵
  • 缺点也是很明显:必须要求数据库对 XA 协议的支持,且由于 XA 协议自身的特点,它会造成事务资源长时间得不到释放,锁定周期长,而且在应用层上面无法干预,因此它性能很差,在互联网项目中并不是很流行这种解决方案。

侵入业务的方案

实际上,最初分布式事务只有 XA 这个唯一方案。XA 是完备的,但在实践过程中,由于种种原因(包含但不限于上面提到缺点)往往不得不放弃,转而从业务层面着手来解决分布式事务问题。比如:

分布式事务方案 常用实践框架 相关阅读
最终一致性方案 RocketMQ等 最终一致性分布式事务
TCC Seata TCC 模式、
ByteTCC、
tcc-transaction
TCC分布式事务案例
Seata官网
Seata三种模式详解
Saga Seata Saga 模式、
ServiceComb
Seata 分布式事务实践详解
TCC、Saga入门级理解
Seata Saga模式详解柔性事务之Saga详解
基于 Seata Saga 设计更有弹性的金融应用
ServiceComb数据一致性解决方案Saga演进介绍
Saga分布式事务解决方案与实践

额外阅读:
深度剖析一站式分布式事务方案 Seata-Server

猜你喜欢

转载自blog.csdn.net/lihuayong/article/details/107884235