美文网首页
分布式事务:X/Open DTP模型

分布式事务:X/Open DTP模型

作者: 晓阳emmm | 来源:发表于2019-03-22 10:48 被阅读0次

    事务的特征

    • Atomic:原子性,事务必须是一个原子的工作单元,要么全部成功,要么全部失败
    • Consistent:一致性,事务完成时必须使所有的数据保持一致状态。
    • Isolation:隔离性,并发事务所做的修改必须与其他事务所做的修改是隔离的。
    • Duration:持久性,事务完成后对系统的影响是永久性的。

    分布式事务的由来

    随着系统用户和数据的增加,原先的单体应用的程序架构向着SOA或者微服务的架构发展,数据库也会有分库分表等操作来提高效率

    单体应用

    单体应用

    单体应用只有一个操作的数据库,完全可以直接依赖数据库的ACID特性和应用的事务管理来保证事务的执行,数据的一致性。

    分布式应用

    soa

    分布式应用中每个模块的应用都对应一个数据库时候,事务管理已经跨应用了,如上图,加入张三下单买东西,要在用户中心添加订单记录,订单中心要去删减库存,对一个整体的应用而言这是一个原子操作,要么两个操作全部成功要么全部失败,来保证数据的一致性。

    X/Open DTP事务模型

    X/Open DTP 全称 X/Open Distributed Transaction Processing Reference是X/Open这个组织定义出的一套分布式事务标准

    分布式事务处理 (DTP) 模型
    X/Open DTP中的角色
    • AP(Application Program):应用程序,主要是定义事务边界以及那些组成事务的特定于应用程序的操作。
    • EM(Resouces Manager):资源管理器,管理一些共享资源的自治域,如提供对诸如数据库之类的共享资源的访问。
    • TM(Transaction Manager):事务管理器,管理全局事务,协调事务的提交或者回滚,并协调故障恢复。

    DTP模型执行流程

    • 第一步:AP使用一组来自RM的资源
    • 第二步:AP通过TM接口定义事务的边界
    • 第三步:TM和RM交换事务信息

    我的博客

    相关文章

      网友评论

          本文标题:分布式事务:X/Open DTP模型

          本文链接:https://www.haomeiwen.com/subject/aohlvqtx.html