博客
关于我
02.Seata介绍
阅读量:774 次
发布时间:2019-03-21

本文共 1333 字,大约阅读时间需要 4 分钟。

Fescar与Seata:分布式事务的开源解决方案

Fescar是阿里巴巴开源的分布式事务中间件,专注于解决微服务场景下的分布式事务问题。它以高效且对业务侵入最小的方式,帮助开发者应对分布式事务中的挑战。Fescar的全称是“Fast&Easy Commit And Rollback”,最初由阿里内部的TXC(Taobao Transaction Constructor)和阿里云的GTS(Global Transaction Service)精炼而来。

Seata与Fescar的关系

Seata是Fescar的升级版本,自2019年4月起,Seata也被用来表示这款开源分布式事务解决方案。Seata由四个英文单词组成,简单易学且具有扩展性:Simple(简单)Extensible(可扩展)Autonomous(自治)Transaction Architecture(事务架构)

Seata介绍

Seata是一款开源的分布式事务解决方案,致力于为用户提供高性能和简单易用的分布式事务服务。它支持四种事务模式:AT、TCC、SAGA和XA,为用户提供一站式的分布式事务解决方案。

分布式事务问题及Seata的解决方案

分布式事务问题是指在分布式系统中,多个节点之间需要完成一系列原子操作,但由于网络延迟、网络故障等因素,难以实现本地事务的强一致性。Seata通过高效的协调机制,解决了这一问题。

Seata通过以下方式解决分布式事务问题:

  • 事务协调器(TC/Transaction Coordinator):维护全局事务和分支事务的状态,驱动全局提交或回滚。
  • 事务管理器(TM/Transaction Manager):控制全局事务的边界,负责开启一个全局事务,并最终发起全局提交或全局回滚的决议。
  • 资源管理器(RM/Resource Manager):控制分支事务,负责分支注册,状态汇报,并接受事务协调器的指令,驱动分支(本地)事务的提交和回滚。
  • Seata管理分布式事务的典型生命周期

  • 事务管理器(TM)要求事务协调器(TC)开始新的全局事务:TC生成全局事务标识符(XID)。
  • XID通过微服务的调用链传播:确保所有参与事务的服务了解全局事务上下文。
  • 资源管理器(RM)将本地事务注册为XID到TC所管理的全局事务的分支:确保各服务事务与全局事务关联。
  • 事务管理器(TM)要求TC提交或回滚XID对应的全局事务:决定全局事务的最终结果。
  • 事务协调器(TC)在XID对应的全局事务下驱动所有分支事务完成提交或回滚:确保全局事务的强一致性。
  • Fescar与Seata的核心区别

    Fescar和Seata的主要区别在于发展历程和技术架构。Fescar最初是为了解决阿里内部的分布式事务问题而开发的,而Seata是对Fescar进行了全面升级,填补了更多分布式事务场景下的痛点点,提升了性能和可靠性。

    结论

    Seata作为Fescar的升级版本,不仅继承了Fescar的核心思想,更在性能、可靠性和灵活性方面进行了优化。在分布式事务领域,Seata通过高效的分布式协调机制,帮助开发者轻松应对复杂的分布式事务问题,成为开源分布式事务解决方案中的佼佼者。

    转载地址:http://xppgz.baihongyu.com/

    你可能感兴趣的文章
    PowerCreatorCMS UploadResourcePic 任意文件上传漏洞复现
    查看>>
    PowerDesigner 使用的一些技巧(转)
    查看>>
    QGIS在Windows上下载安装与建立空间数据库连接
    查看>>
    PowerDesigner165安装婆姐汉花教程
    查看>>
    PowerDesigner使用教程:设置注释、默认值属性
    查看>>
    PowerDesigner使用教程:不显示背景网格
    查看>>
    PowerDesigner使用教程:创建数据模型以及导出
    查看>>
    PowerDesigner使用教程:右侧工具栏显示/隐藏
    查看>>
    PowerDesigner使用教程:导出sql文件以及解决中文乱码问题
    查看>>
    PowerDesigner使用教程:时间字段设置
    查看>>
    PowerDesigner使用教程:给字段添加唯一约束
    查看>>
    QGIS中怎样设置图层样式并导出地图样式
    查看>>
    PowerDesigner使用笔记
    查看>>
    QGIS中怎样实现数据坐标系转换
    查看>>
    PowerDesigner学习--基本步骤
    查看>>
    PowerDesigner导出Report通用报表
    查看>>
    PowerDesigner教程系列(二)概念数据模型
    查看>>
    Powerdesigner显示表的comment和列的comment的方法
    查看>>
    PowerDesigner最基础的使用方法入门学习
    查看>>
    PowerDesigner版本控制器设置权限
    查看>>