seata初体验

seata初体验,第1张

seata初体验 Seata 是什么?
Seata 是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。Seata 将为用户提供了 AT、TCC、SAGA 和 XA 事务模式,为用户打造一站式的分布式解决方案。
优点
对业务无侵入
Seata术语
  • TC (Transaction Coordinator) - 事务协调者
维护全局和分支事务的状态,驱动全局事务提交或回滚。
  • TM (Transaction Manager) - 事务管理器
定义全局事务的范围:开始全局事务、提交或回滚全局事务
  • RM (Resource Manager) - 资源管理器
管理分支事务处理的资源,与TC交谈以注册分支事务和报告分支事务的状态,并驱动分支事务提交或回滚。

实现流程
  • 获取事务的控制权
手写Java 类,实现Connection 接口,通过对Connection 接口的切面,手动替换为自己的手写实现类。
  • 事务的发起(TM)(服务调用链的起始方)
1:创建事务组,生成事务组ID(groupId)(xid)
2:创建分支事务(分支事务id,分支事务type:commit/rollback,所属组别)
  分支事务的type依赖于切面执行成功与否,成功则为commit
3:注册分支事务
4:提交全局事务
  tm根据分支事务的状态,决定组事务的成功与否,将此状态同步到子事务,完成最后的提交或者回滚,完成分布式事务的 *** 作

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/zaji/4688816.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-07
下一篇2022-11-07

发表评论

登录后才能评论

评论列表(0条)

    保存