Skip to content

Commit 4b9cae2

Browse files
authored
Merge pull request #235 from codingapi/5.0.0-dev
5.0.0 dev
2 parents 9f5f109 + 433d2ed commit 4b9cae2

430 files changed

Lines changed: 9710 additions & 7392 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

README.md

Lines changed: 21 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# tx-lcn分布式事务框架 (5.0.0.RC2)
1+
# tx-lcn分布式事务框架 (5.0.0)
22

33
[![Gitter](https://badges.gitter.im/codingapi/tx-lcn.svg)](https://gitter.im/codingapi/tx-lcn?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
44
[![BBS](https://bbs.txlcn.org/style/Archlinux/txlcn-bbs.svg)](https://bbs.txlcn.org)
@@ -7,30 +7,33 @@
77

88
## 项目介绍
99

10-
5.0完全拥抱springboot体系,JDK版本为1.8开发,将不仅仅支持LCN事务模式,也引入了TCC,TXC模式,同时把分布式事务协调的模式抽象出来,让各种模式可以嵌套使用。
10+
5.0完全拥抱springboot体系,基于JDK1.8,不仅仅支持LCN事务模式,同时引入了TCC,TXC模式,把分布式事务协调的模式抽象出来,让各种模式可以嵌套使用。
1111

12+
事务模式说明:TCC是用户自己实现提交回滚业务,LCN是框架代理JDBC Connection实现提交回滚业务, TXC是框架分析业务SQL提前提交,在需要回滚时生成逆向回滚。
1213

13-
版本主要特点:
14-
1. 将基于springboot 2.0研发,将替换groupId传递机制,由sleuth机制处理。
15-
2. 将抽离LCN封装业务,提出业务接口层与通讯层,将可支持自定义分布式事务模式与通讯模式。
16-
3. 将支持LCN TXC TCC 三种事务模式,且可混合支持。
17-
4. 性能继续优化,去掉线程等待机制,提高吞吐量。
14+
TCC忽略不说。LCN与TXC两种框架实现的事务模式到底那个更优越呢?
1815

16+
理论上,在并发量大,资源相对紧张时,TXC要优于LCN,但从目前测试上来说,结果却非如此,LCN还是稍优于TXC。同时TXC还限制了业务SQL形式,未做到完全逆向
17+
后续版本将会着重优化TXC,包括性能上和SQL的完全逆向上。
1918

2019

21-
## 模块划分
20+
版本较4.x主要特点:
21+
1. 基于springboot 2.0研发
22+
2. 抽离LCN封装业务,提出业务接口层与通讯层,可支持自定义分布式事务模式与通讯模式。
23+
3. 支持LCN TXC TCC 三种事务模式,且可混合支持。
24+
4. 性能较优秀,去掉了线程等待机制,提高吞吐量。
25+
2226

23-
1. tx-client:*TXLCN分布式事务客户端*
24-
2. tx-client-dubbo:*dubbo框架客户端*
25-
3. tx-client-springcloud:*springcloud框架客户端*
26-
4. tx-commons:*公共模块*
27-
5. tx-jdbcproxy-p6spy:*sql拦截代理,采用了p6spy方式*
28-
6. tx-logger:*性能测试日志*
29-
7. tx-manager:*TXLCN事务管理器*
30-
8. tx-spi-message:*消息扩展接口*
31-
9. tx-spi-message-netty:*netty消息实现*
32-
10. tx-spi-sleuth:*sleuth扩展接口*
3327

28+
## 模块划分
29+
30+
1. txlcn-tc:*TXLCN分布式事务客户端*
31+
2. txlcn-common:*公共模块*
32+
3. txlcn-logger:*日志模块。(默认提供日志持久化到MySQL的支持)*
33+
4. txlcn-tm:*TXLCN事务管理器*
34+
5. txlcn-txmsg:*事务消息扩展接口*
35+
6. txlcn-txmsg-netty:*事务消息接口的Netty实现*
36+
7. txlcn-tracing:*分布式事务追踪工具*
3437

3538
## 官网文档
3639

package.txmanager.bat

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
@echo off
22

3-
cd tx-manager
3+
cd txlcn-tm
44

55
start mvn clean package
66

pom.xml

Lines changed: 15 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
<groupId>com.codingapi.txlcn</groupId>
88
<artifactId>tx-lcn</artifactId>
9-
<version>5.0.0.RC2</version>
9+
<version>5.0.0</version>
1010
<packaging>pom</packaging>
1111

1212

@@ -16,16 +16,13 @@
1616

1717

1818
<modules>
19-
<module>tx-client</module>
20-
<module>tx-commons</module>
21-
<module>tx-jdbcproxy-p6spy</module>
22-
<module>tx-spi-message</module>
23-
<module>tx-spi-message-netty</module>
24-
<module>tx-spi-sleuth</module>
25-
<module>tx-client-springcloud</module>
26-
<module>tx-client-dubbo</module>
27-
<module>tx-manager</module>
28-
<module>tx-logger</module>
19+
<module>txlcn-common</module>
20+
<module>txlcn-logger</module>
21+
<module>txlcn-tc</module>
22+
<module>txlcn-tm</module>
23+
<module>txlcn-tracing</module>
24+
<module>txlcn-txmsg</module>
25+
<module>txlcn-txmsg-netty</module>
2926
</modules>
3027

3128
<properties>
@@ -46,7 +43,7 @@
4643
<maven.javadoc.plugin>2.10.3</maven.javadoc.plugin>
4744
<maven.gpg.plugin>1.6</maven.gpg.plugin>
4845

49-
<codingapi.txlcn.version>5.0.0.RC2</codingapi.txlcn.version>
46+
<codingapi.txlcn.version>5.0.0</codingapi.txlcn.version>
5047

5148
<txlcn-org.projectlombok.version>1.18.0</txlcn-org.projectlombok.version>
5249
<txlcn-spring-cloud.version>Finchley.SR2</txlcn-spring-cloud.version>
@@ -140,55 +137,37 @@
140137

141138
<dependency>
142139
<groupId>com.codingapi.txlcn</groupId>
143-
<artifactId>tx-client-springcloud</artifactId>
140+
<artifactId>txlcn-tc</artifactId>
144141
<version>${codingapi.txlcn.version}</version>
145142
</dependency>
146143

147144
<dependency>
148145
<groupId>com.codingapi.txlcn</groupId>
149-
<artifactId>tx-client-dubbo</artifactId>
146+
<artifactId>txlcn-txmsg-netty</artifactId>
150147
<version>${codingapi.txlcn.version}</version>
151148
</dependency>
152149

153150
<dependency>
154151
<groupId>com.codingapi.txlcn</groupId>
155-
<artifactId>tx-jdbcproxy-p6spy</artifactId>
152+
<artifactId>txlcn-common</artifactId>
156153
<version>${codingapi.txlcn.version}</version>
157154
</dependency>
158155

159156
<dependency>
160157
<groupId>com.codingapi.txlcn</groupId>
161-
<artifactId>tx-client</artifactId>
158+
<artifactId>txlcn-logger</artifactId>
162159
<version>${codingapi.txlcn.version}</version>
163160
</dependency>
164161

165162
<dependency>
166163
<groupId>com.codingapi.txlcn</groupId>
167-
<artifactId>tx-spi-message-netty</artifactId>
164+
<artifactId>txlcn-txmsg</artifactId>
168165
<version>${codingapi.txlcn.version}</version>
169166
</dependency>
170167

171168
<dependency>
172169
<groupId>com.codingapi.txlcn</groupId>
173-
<artifactId>tx-commons</artifactId>
174-
<version>${codingapi.txlcn.version}</version>
175-
</dependency>
176-
177-
<dependency>
178-
<groupId>com.codingapi.txlcn</groupId>
179-
<artifactId>tx-logger</artifactId>
180-
<version>${codingapi.txlcn.version}</version>
181-
</dependency>
182-
183-
<dependency>
184-
<groupId>com.codingapi.txlcn</groupId>
185-
<artifactId>tx-spi-message</artifactId>
186-
<version>${codingapi.txlcn.version}</version>
187-
</dependency>
188-
189-
<dependency>
190-
<groupId>com.codingapi.txlcn</groupId>
191-
<artifactId>tx-spi-sleuth</artifactId>
170+
<artifactId>txlcn-tracing</artifactId>
192171
<version>${codingapi.txlcn.version}</version>
193172
</dependency>
194173

run.txmanager.bat

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
@echo off
22

3-
start java -jar -Xms256m -Xmx512m tx-manager/target/tx-manager-5.0.0.RC2.jar
3+
start java -jar -Xms256m -Xmx512m txlcn-tm/target/txlcn-tm-5.0.0.jar
44

tx-client-dubbo/pom.xml

Lines changed: 0 additions & 38 deletions
This file was deleted.

tx-client-dubbo/src/main/java/com/codingapi/txlcn/client/spi/sleuth/dubbo/TxLcnDubboInitializer.java

Lines changed: 0 additions & 45 deletions
This file was deleted.

tx-client-dubbo/src/main/resources/META-INF/dubbo/com.alibaba.dubbo.rpc.cluster.loadBalance

Lines changed: 0 additions & 4 deletions
This file was deleted.

tx-client-springcloud/pom.xml

Lines changed: 0 additions & 38 deletions
This file was deleted.

tx-client-springcloud/src/main/java/com/codingapi/txlcn/client/spi/sleuth/springcloud/ribbon/customizer/RibbonFirstRestTemplateCustomizer.java

Lines changed: 0 additions & 59 deletions
This file was deleted.

0 commit comments

Comments
 (0)