![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
分布式事务
勿忘初心_LGH
善于总结,钻研,平时喜欢看书,运动,旅游
展开
-
快速开始
说明TX-LCN 主要有两个模块,Tx-Client(TC) Tx-Manager(TM). TC作为微服务下的依赖,TM是独立的服务。本教程带领大家了解框架的基本步骤,详细配置可参考 dubbo springcloudTM配置与启动TM的准备环境TM需要依赖的服务有 JDK1.8+,Mysql5.6+,Redis3.2+,Git,Maven初始化TM Mysql数据库 创建...原创 2019-02-20 15:33:43 · 360 阅读 · 0 评论 -
依赖
基础依赖JDK 8+ Maven 3(可选的) SpringBoot 2.xJava库依赖projectlombok:1.18.0 hessian:4.0.38 fastjson:1.2.34 protostuff1.1.3 kryo:4.0.0 brave-instrumentation:5.4.3 commons-dbutils:1.7 jsqlparser:1.3...原创 2019-02-20 15:34:22 · 96 阅读 · 0 评论 -
示例
尝试下简单的分布式事务步骤引导准备依赖环境服务 JDK1.8+,Mysql5.6+,Redis3.2+,Consul(SpringCloud),ZooKeeper(Dubbo),Git,Maven 初始化数据 见下方说明 启动TxManager(TM) 见下方说明 配置微服务模块 见下方说明 启动模块与测试 见下方说明初始化数据TM数据初始化TxManager(TM...原创 2019-02-20 15:38:33 · 339 阅读 · 0 评论 -
事务控制原理
TX-LCN由两大模块组成, TxClient、TxManager,TxClient作为模块的依赖框架,提供TX-LCN的标准支持,TxManager作为分布式事务的控制放。事务发起方或者参与反都由TxClient端来控制。原理图:核心步骤 创建事务组 是指在事务发起方开始执行业务代码之前先调用TxManager创建事务组对象,然后拿到事务标示GroupId的过程。 ...原创 2019-02-20 15:39:21 · 259 阅读 · 0 评论 -
LCN事务模式
一、原理介绍: LCN模式是通过代理Connection的方式实现对本地事务的操作,然后在由TxManager统一协调控制事务。当本地事务提交回滚或者关闭连接时将会执行假操作,该代理的连接将由LCN连接池管理。二、模式特点:该模式对代码的嵌入性为低。 该模式仅限于本地存在连接对象且可通过连接对象控制事务的模块。 该模式下的事务提交与回滚是由本地事务方控制,对于数据一致性上有较...原创 2019-02-20 15:39:59 · 1542 阅读 · 0 评论 -
TCC事务模式
一、原理介绍: TCC事务机制相对于传统事务机制(X/Open XA Two-Phase-Commit),其特征在于它不依赖资源管理器(RM)对XA的支持,而是通过对(由业务系统提供的)业务逻辑的调度来实现分布式事务。主要由三步操作,Try: 尝试执行业务、 Confirm:确认执行业务、 Cancel: 取消执行业务。二、模式特点:该模式对代码的嵌入性高,要求每个业务需要写三种...原创 2019-02-21 09:21:09 · 1460 阅读 · 0 评论 -
扩展支持
事务模式扩展TX-LCN不仅仅支持LCN TXC TCC模式,也可以由开发者自定义符合TX-LCN控制原理的请求事务模型。事务模式的接口定义增加一种新的事务模式名称,不能与已有的模式重名,例如test模式。在使用新的模式时,只需要在业务上标准类型即可。如下: @TxTransaction(type = "test") @Transactional pub...原创 2019-02-21 09:25:03 · 351 阅读 · 0 评论 -
通讯指令手册
TxClient 与 TxManager 通讯指令说明文档通讯指令数据包格式为Json格式Json结构说明:字段 数据类型 说明 key string 请求唯一标示 remoteKey string 请求资源方标示key msg object 请求包数据体 msg.action string 请求业务方法名 ...原创 2019-02-21 09:26:08 · 799 阅读 · 0 评论