
LCN分布式事务
cuit_618
不积跬步无以至千里
展开
-
LCN分布式事务学习0-分布式事务理论基础
1. 事务概述1.1 事务的定义将一个活动涉及到的所有操作纳入到一个不可分割的执行单元,只要其中任一操作执行失败,都将导致整个执行单元回滚。简单地说,事务提供一种“要么什么都不做,要么做全套(All or Nothing)”机制。事务具备ACID的特性,即原子性、一致性、隔离性和持久性。1.2 事务分类一般而言,常将事务分为如下几种类型的事务:本地事务 垮库事务 分...原创 2019-10-31 20:09:23 · 288 阅读 · 0 评论 -
LCN分布式事务学习3-服务端(TM)代码逻辑梳理
1. TM启动流程TM是一个springboot项目,在springboot启动时,会通过一个applicationRunner启动TM服务,即启动一个基于netty网络框架的服务端。NettyRpcServerChannelInitializer类的源码如下:这里重点关注下RpcAnswerHandler处理器。RpcAnswer是一个接口,有两个实现:Serve...原创 2019-10-30 13:52:43 · 730 阅读 · 0 评论 -
LCN分布式事务学习2-客户端(TC)执行流程介绍
1. LCN架构介绍注:本节内容来自LCN官网。LCN由两大模块组成,TC和TM,TC作为模块的依赖框架,提供TX-LCN的标准支持,TM作为分布式事务的控制方。事务发起方或者参与方都由TC端来控制。核心步骤 创建事务组 是指在事务发起方开始执行业务代码之前先调用TxManager创建事务组对象,然后拿到事务标示GroupId的过程。 加入事务组 添加事务组是指...原创 2019-10-29 17:57:18 · 1116 阅读 · 1 评论 -
netty学习07-netty在LCN分布式事务框架中的应用
1. LCN简介LCN是一个分布式事务框架,底层的网络框架使用的就是netty。LCN分为客户端(TC)和服务器端(TM),本文不会对LCN做过多的介绍,只是从底层的网络框架来说明netty在实际项目中的应用。TM作为一个服务端,需要单独启动,而LCN的TM是一个springboot项目,环境搭建和启动过程和一般的springboot项目类似。LCN的TM和TC在springboot启动过...原创 2019-10-29 11:34:18 · 452 阅读 · 0 评论 -
LCN分布式事务学习1-项目环境搭建
1. 项目环境的搭建该项目是以spring boot为基础,spring cloud为远程调用技术框架,分为lcn(parent)、lcn-eureka、lcn-tm、lcn-service-one、lcn-service-tow几个模块。2. lcn模块(parent)2.1 pom.xml<?xml version="1.0" encoding="UTF-8"?&g...原创 2019-10-28 14:56:42 · 555 阅读 · 0 评论