Seata框架
# Seata框架
Seata 是⼀款开源的分布式事务解决⽅案,致⼒于提供⾼性能和简单易⽤的分布式事务服务。Seata 将为⽤户提供了 AT、TCC、SAGA 和 XA 事务模式,为⽤户打造⼀站式的分布式解决⽅案。
在 Seata 开源之前,Seata 对应的内部版本在阿⾥经济体内部⼀直扮演着分布式⼀致性中间件的⻆⾊,帮助经济体平稳的度过历年的双11,对各BU业务进⾏了有⼒的⽀撑。商业化产品GTS 先后在阿⾥云、⾦融云进⾏售卖
# Seata模块
Seata分为三大模块:
TC :事务协调者。负责我们的事务ID的⽣成,事务注册、提交、回滚等。
TM:事务发起者。定义事务的边界,负责告知 TC,分布式事务的开始,提交,回滚。
RM:资源管理者。管理每个分⽀事务的资源,每⼀个 RM 都会作为⼀个分⽀事务注册在 TC。
在Seata的AT模式中,TM和RM都作为SDK的⼀部分和业务服务在⼀起,我们可以认为是Client。TC是⼀个独⽴的服务,通过服务的注册、发现将⾃⼰暴露给Client们。
Seata 中有三⼤模块中, TM 和 RM 是作为 Seata 的客户端与业务系统集成在⼀起,TC 作为 Seata 的服务端独立部署。
在 Seata 中,分布式事务的执⾏流程:
TM 开启分布式事务(TM 向 TC 注册全局事务记录);
按业务场景,编排数据库、服务等事务内资源(RM 向 TC 汇报资源准备状态 );
TM 结束分布式事务,事务⼀阶段结束(TM 通知 TC 提交/回滚分布式事务);
TC 汇总事务信息,决定分布式事务是提交还是回滚;
TC 通知所有 RM 提交/回滚 资源,事务⼆阶段结束;
- 01
- 以 root 身份启动 transmission-daemon12-13
- 02
- Debian系统安装qbittorrent-nox12-09
- 03
- LXC Debain12安装zerotier并实现局域网自动nat转发07-29