十二、集成分布式事务组件Seata

发布时间 2023-05-26 22:08:51作者: 夏雪冬蝉

什么是Seata

网址:seata.io

Seata 是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。Seata 将为用户提供了 AT、TCC、SAGA 和 XA 事务模式,为用户打造一站式的分布式解决方案。

 seata术语

TC (Transaction Coordinator) - 事务协调者

维护全局和分支事务的状态,驱动全局事务提交或回滚。相当于下载的seata

TM (Transaction Manager) - 事务管理器

定义全局事务的范围:开始全局事务、提交或回滚全局事务。相当于应用(business、member)

RM (Resource Manager) - 资源管理器

管理分支事务处理的资源,与TC交谈以注册分支事务和报告分支事务的状态,并驱动分支事务提交或回滚。相当于数据库。

Seata分布式事务的原理

 正常情况下,如果某一步失败了,需要做补偿来还原。补偿交给seata来做。

Seata分布式事务的四种模式

  • AT模式,默认,简单,需要增加undo_log表,生成反向SQL,性能高。(对于insert,就反向生成delete). 回滚后,原来没数据的, 现在还是没有数据.