分布式事务解决方案-seata简介
Seata
simple extensible autonomous transaction architecture
相关概念
怎么定义分布式事务
通常来说,分布式事务是由一批分支事务
构成的,而分支事务又是本地事务
。
Seata组成部分
Seata 由三部分构成。
- Transaction Coordinator(TC)
维护全局(global)和分支事务(branch transaction)的状态。触发全局、分支事务提交或者回滚。
- Transaction Manager(TM)
作用于全局事务
:开启全局事务、提交/回滚全局事务。 - Resource Manager(RM)
管理正在工作的分支事务(branch transaction
)的资源信息,并将他注册上TC喝报告分支事务的状态信息。并且驱动分支事务提交或回滚。
Seata工作流程
- TM向TX询问并开启一个新的全局事务。TC会生成一个
XID
代表这个全局事务。 XID
通过微服务之间的调用链来传播。- RM注册本地事务当做是分支事务到这个全局事务并反馈到TC。
- TM询问TC这个全局事务到底是要回滚还是提交。
- TC驱动所有的与这个
XID
相关的分支事务来一起提交他们的事务或者回滚。
- -