跳到主要内容

03、分布式事务 实战 - TX-LCN 概述

1.简介

  • LCN 框架在 2017 年 6 月发布第一个版本
  • LCN 早期设计时,1.0 版本和 2.0 版本设计步骤如下:
    1、 锁定事务单元(Lock);
    2、 确认事务模块状态(Confirm);
    3、 通知事务(Notify);
  • 取各自首字母后名称为 LCN。
  • LCN 框架从 5.0 开始兼容了 LCN、TCC、TXC 三种事务模式,为了和 LCN 框架区分,从 5.0 开始把 LCN 框架更名为:TX-LCN 分布式事务框架

2.TX-LCN 原理

  • TX-LCN 由两大模块组成,TxClient、TxManager
  • TxClient 作为模块的依赖框架,提供了 TX-LCN 的标准支持,事务发起方和参与方都属于 TxClient。TxManager 作为分布式事务的控制方,控制整个事务
     

2.1 原理中核心内容

2.1.1 创建事务组
  • 是指在事务发起方开始执行业务代码之前先调用 TxManager 创建事务组对象,然后拿到事务标识 GroupId 的过程。
2.1.2 加入事务组
  • 添加事务组是指参与方在执行完业务方法以后,将该模块的事务信息通知给 TxManager 的操作。
2.1.3 通知事务组
  • 是指在发起方执行完业务代码以后,将发起方执行结果状态通知给 TxManager,TxManager 将根据事务最终状态和事务组的信息来通知相应的参与模块提交或回滚事务,并返回结果给事务发起方