2020SpringCloud学习年终总结——第十七章-seata

Seata前置

  • 分布式之前,单机单库没有下面这些问题;
    在这里插入图片描述

    单体引用被拆分成微服务应用,原来的三个模块,被拆分成三个独立的应用,分别使用三个独立的数据源,业务操作需要调用三个服务来完成。此时每个服务内部数据的一致性由本地事务来保证,但是全局的数据一致性问题没法保证。

  • Seata是一款开源的分布式事务解决方案,致力于在微服务架构下提供高性能和简单易用的分布式事务服务。官网地址:http://seata.io/zh-cn/

  • 能干嘛:一个典型的分布式事务过程:
    在这里插入图片描述

    • 分布式事务处理过程的一致性ID,以及三个组件模块:

      • Transaction ID XID,全局唯一的事务;
      • 三组件:
        • Transaction Coordinator(TC):事务协调器,维护全局事务的运行状态,负责协调并驱动全局事务的提交和回滚;
        • Transaction Manager(TM):控制全局事务的边界,负责开启一个全局事务,并最终发起全局提交或全局归滚协议;
        • Resource Manager(RM):控制分支事务,负责分支注册、状态汇报,并接收事务协调器的指令,驱动分支(本地)事务的提交等;
    • 第一步:TM向TC申请开启一个全局事务,全局事务创建成功,并生成一个全局唯一的XID;

    • 第二步:XID在微服务调用链路的上下文中传播;

    • 第三步:RM向TC注册分支事务,将其纳入XID对应全局事务的管辖中;

    • 第四步:TM向TC发起针对XID的全局提交或回滚决议;

    • 第五步:TC调度XID下管辖的全部分支事务,完成提交或回滚请求;

版本说明

  • Seata 0.9.0

  • 下载地址:https://github.com/seata/seata/releases

  • 具体步骤:

    • 解压seata-server-0.9.0.zip解压到指定目录,并修改conf目录下的file.conf配置文件:

      • 先备份原始file.conf文件;
      • 修改:自定义事务组名称+事
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值