Skip to content

Commit 7f22dd1

Browse files
authored
Merge pull request #63 from codingapi/4.1.0
4.1.0
2 parents 6f42dd6 + 5fe0f0e commit 7f22dd1

15 files changed

Lines changed: 51 additions & 79 deletions

File tree

README.md

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
# LCN分布式事务框架v4.0
22

3-
"LCN并不生产事务,LCN只是本地事务的搬运工"
3+
"LCN并不生产事务,LCN只是本地事务的协调者"
44

55
## 框架介绍
66

7-
LCN分布式事务框架是一款事务协调性的框架,框架本身并不创建事务,只是对本地事务做协调控制。因此该框架与其他第三方的框架兼容性强,支持所有的关系型数据库事务,支持多数据源,支持与第三方数据库框架一块使用(例如 sharding-jdbc),在使用框架的时候只需要添加分布式事务的注解即可,对业务的侵入性低。LCN框架主要是为微服务框架提供分布式事务的支持,在微服务框架上做了进一步的事务机制优化,在一些负载场景上LCN事务机制要比本地事务机制的性能更好,4.0以后框架开方了插件机制可以让更多的第三方框架支持进来。
7+
LCN分布式事务框架的核心功能是对本地事务的协调控制,框架本身并不创建事务,只是对本地事务做协调控制。因此该框架与其他第三方的框架兼容性强,支持所有的关系型数据库事务,支持多数据源,支持与第三方数据库框架一块使用(例如 sharding-jdbc),在使用框架的时候只需要添加分布式事务的注解即可,对业务的侵入性低。LCN框架主要是为微服务框架提供分布式事务的支持,在微服务框架上做了进一步的事务机制优化,在一些负载场景上LCN事务机制要比本地事务机制的性能更好,4.0以后框架开方了插件机制可以让更多的第三方框架支持进来。
88

99

1010
## 官方网址
@@ -81,13 +81,13 @@ tx-plugins-db 是LCN 对关系型数据库的插件支持
8181

8282
如上代码执行完成以后两个模块都将回滚事务。
8383

84-
说明:在使用LCN分布式事务时,只需要将事务的开始方法添加`@TxTransaction(isStart=true)`注解即可,在参与方添加`@TxTransaction`即可。详细见demo教程
84+
说明:在使用LCN分布式事务时,只需要将事务的开始方法添加`@TxTransaction(isStart=true)`注解即可,在参与方添加`@TxTransaction`或者实现`ITxTransaction`接口即可。详细见demo教程
8585

8686
## 关于@TxTransaction 使用说明
8787

8888
@TxTransaction注解是分布式事务的标示。
8989

90-
若存在业务方法:a->b b->c b->d,那么开启分布式事务注解的话,只需要在a方法上添加@TxTransaction即可。
90+
若存在业务方法:a->b b->c b->d,那么开启分布式事务注解的话,需要在各个模块方法上添加@TxTransaction即可。
9191

9292
```
9393
@TxTransaction(isStart=true)
@@ -112,10 +112,7 @@ tx-plugins-db 是LCN 对关系型数据库的插件支持
112112
## maven 中心库地址
113113

114114

115-
116115
```
117-
118-
119116
<dependency>
120117
<groupId>com.codingapi</groupId>
121118
<artifactId>tx-client</artifactId>

pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
<groupId>com.codingapi</groupId>
77
<artifactId>tx-lcn</artifactId>
8-
<version>4.0.3</version>
8+
<version>4.1.0</version>
99
<packaging>pom</packaging>
1010

1111
<name>tx-lcn</name>
@@ -32,7 +32,7 @@
3232
<java.version>1.7</java.version>
3333
<maven-compiler-plugin.version>3.6.0</maven-compiler-plugin.version>
3434

35-
<lcn.last.version>4.0.3</lcn.last.version>
35+
<lcn.last.version>4.1.0</lcn.last.version>
3636
</properties>
3737

3838

transaction-dubbo/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<parent>
99
<groupId>com.codingapi</groupId>
1010
<artifactId>tx-lcn</artifactId>
11-
<version>4.0.3</version>
11+
<version>4.1.0</version>
1212
</parent>
1313

1414
<groupId>com.codingapi</groupId>

transaction-dubbo/src/main/java/com/codingapi/tx/dubbo/service/impl/ModelNameServiceImpl.java

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -23,13 +23,24 @@ public class ModelNameServiceImpl implements ModelNameService {
2323
@Autowired
2424
private ApplicationConfig applicationConfig;
2525

26-
@Autowired
27-
private ProviderConfig providerConfig;
28-
2926
@Autowired
3027
private ApplicationContext applicationContext;
3128

32-
public RegistryConfig getRegistryConfig(){
29+
private ProviderConfig providerConfig(){
30+
Map<String, ProviderConfig> beans = applicationContext.getBeansOfType(ProviderConfig.class);
31+
ProviderConfig providerConfig = null;
32+
if(beans!=null){
33+
String defaultKey = "default";
34+
for(String key:beans.keySet()){
35+
defaultKey = key;
36+
}
37+
38+
providerConfig = beans.get(defaultKey);
39+
}
40+
return providerConfig;
41+
}
42+
43+
private RegistryConfig getRegistryConfig(){
3344
Map<String, RegistryConfig> beans = applicationContext.getBeansOfType(RegistryConfig.class);
3445
RegistryConfig registryConfig = null;
3546
if(beans!=null){
@@ -64,7 +75,7 @@ private String getIp() {
6475

6576
@Override
6677
public String getUniqueKey() {
67-
String address = getIp() + providerConfig.getPort();
78+
String address = getIp() + getPort();
6879
return MD5Util.md5(address.getBytes());
6980
}
7081

@@ -75,8 +86,8 @@ public String getIpAddress() {
7586
}
7687

7788
private int getPort(){
78-
if(providerConfig.getPort()!=null){
79-
return providerConfig.getPort();
89+
if(providerConfig()!=null&&providerConfig().getPort()!=null){
90+
return providerConfig().getPort();
8091
}
8192

8293
RegistryConfig registryConfig = getRegistryConfig();

transaction-motan/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<parent>
99
<groupId>com.codingapi</groupId>
1010
<artifactId>tx-lcn</artifactId>
11-
<version>4.0.3</version>
11+
<version>4.1.0</version>
1212
</parent>
1313

1414
<groupId>com.codingapi</groupId>

transaction-springcloud/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<parent>
77
<groupId>com.codingapi</groupId>
88
<artifactId>tx-lcn</artifactId>
9-
<version>4.0.3</version>
9+
<version>4.1.0</version>
1010
</parent>
1111

1212
<groupId>com.codingapi</groupId>

tx-client/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<parent>
77
<groupId>com.codingapi</groupId>
88
<artifactId>tx-lcn</artifactId>
9-
<version>4.0.3</version>
9+
<version>4.1.0</version>
1010
</parent>
1111

1212
<groupId>com.codingapi</groupId>

tx-client/src/main/java/com/codingapi/tx/listener/service/impl/InitServiceImpl.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ private void welcome(){
3333
System.out.println("\t\t** \t\t** \t\t** ***");
3434
System.out.println("\t\t*****\t\t ****\t\t** **");
3535
System.out.println();
36-
System.out.println("\t\tLCN-Client version:4.0.3");
36+
System.out.println("\t\tLCN-Client version:4.1.0");
3737
System.out.println();
3838
}
3939

tx-manager/pom.xml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
<groupId>com.codingapi</groupId>
77
<artifactId>tx-manager</artifactId>
8-
<version>4.0.3</version>
8+
<version>4.1.0</version>
99
<packaging>jar</packaging>
1010

1111
<name>tx-manager</name>
@@ -61,6 +61,12 @@
6161
</exclusions>
6262
</dependency>
6363

64+
65+
<!--<dependency>-->
66+
<!--<groupId>org.springframework.cloud</groupId>-->
67+
<!--<artifactId>spring-cloud-starter-zookeeper-discovery</artifactId>-->
68+
<!--</dependency>-->
69+
6470
<dependency>
6571
<groupId>org.springframework.boot</groupId>
6672
<artifactId>spring-boot-starter-web</artifactId>

tx-manager/src/main/java/com/codingapi/tm/listener/service/impl/InitServiceImpl.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ private void welcome(){
4141
System.out.println("\t\t** \t\t** \t\t** ***");
4242
System.out.println("\t\t*****\t\t ****\t\t** **");
4343
System.out.println();
44-
System.out.println("\t\tLCN-TxManager version:4.0.3");
44+
System.out.println("\t\tLCN-TxManager version:4.1.0");
4545
System.out.println();
4646
}
4747

0 commit comments

Comments
 (0)