seata的AT模式执行流程
seata是什么?
seate是解决分布式事物的一款开源的方案
为啥要用seata?
在分布式中,参与事物的多个分支无法相互感知,不知道彼此执行的结果.因此想要事物生效,就要找一个统一的事物协调者,保证事物原子性.
seata简介:
TC: 事物协调者,维护全局和分支事务的状态,协调全局事务提交或回滚。
TM: 事物管理器.定义全局事物的范围,开启,提交,回滚事物.
RM: 资源管理器,管理分支事务,与TC交互注册分支事物并且报告事物状态,并且驱动分支事物提交或者回滚
工作原理

1.tm开启全局事务
2.分支事物向TC,注册报告执行状态

3.TM提交回滚事物

AT模式执行流程(最终一致性):

也就是说,在TM开启事物后,分支注册TC事物,RM执行sql并且提交,之后rm向TC报告事物状态,如果所有rm都执行成功,Tc提交全局事物.
如果rm有执行失败的,则数据库通过undolog进行事物回滚

浙公网安备 33010602011771号