springcloud使用LCN分布式事务

springcloud使用LCN分布式事务此文为装载 前面根据自己参考的资料搭建时遇到问题先说明一下 1 tx manager 是个什么东西 它是独立的服务 要想实现分布式事务 要把它注册到 Eureka 与其他服务一样配置 2 到底下载哪个 tx manager 大部分文章给了下面这个地址 是图 2 这个东西吗 我下载的并不是这个 3 gradle 依赖问题 我用的是 gradle 开始依赖的 jar 没有排除日志依赖 导致日志冲突 无法启动

此文为装载,前面根据自己参考的资料搭建时遇到问题先说明一下

1,tx-manager是个什么东西? 它是独立的服务,要想实现分布式事务,要把它注册到Eureka,与其他服务一样配置

2,到底下载哪个tx-manager,大部分文章给了下面这个地址,是图2这个东西吗?我下载的并不是这个

3,gradle依赖问题:我用的是gradle,开始依赖的jar,没有排除日志依赖,导致日志冲突,无法启动,gradle依赖如图3

4,启动报错,找不到tx.properties文件问题,应该把下文中TxManagerTxUrlServiceImpl类,定义为配置类如图4

5,配置Erueka,我下载的tx-manager如图5,没有bootstrap.yml文件,为了统一cloud配置,我把properties中配置放到这个配置文件中,其实除了自身的端口和服务名外,其他跟其他微服务一样

6,先启动tx-manager,必须先启动该服务,不然先启动其他服务会报错;切换到tx-manager所在文件,通过命令启动,如图6

7,跨服务调用失败,我在测试时,想跨服务调用另外一个服务修改接口,结果无法调通,报错内容是-无法连接主机;然后我把tx-manager相关依赖去掉可以调通,说明原因在这里,未解决

图2springcloud使用LCN分布式事务

 图3

 compile('com.codingapi:transaction-springcloud:4.1.0'){ exclude group: 'org.slf4j', module: '*' } compile('com.codingapi:tx-plugins-db:4.1.0'){ exclude group: 'org.slf4j', module: '*' }

图4

springcloud使用LCN分布式事务 图5

springcloud使用LCN分布式事务

图6 

springcloud使用LCN分布式事务

————————————————————————————————————————————-

本人使用LCN4.1.0版本(数据库是mysql,注册中心eureka)

LCN分布式事务官网:http://www.txlcn.org/

springcloud的demo:https://github.com/codingapi/springcloud-lcn-demo

tx-manager事务控制器服务端:https://github.com/codingapi/tx-lcn

1、maven依赖

作者提供的tx-manager是LCN分布式事务的事务中间件,需要springcloud微服务框架需要与tx-manager进行通信,通过tx-manager协调微服务之间的事务调用。

tx-manager需要配置redis和注册中心(源码默认配置eureka,参考作者官网也可以配置zookeeper)

配置在源码的application.property文件

3、微服务中引入LCN事务

(1)配置tx-manager的url地址,每个微服务都需要配置

方式一: 使用默认方式是添加tx.properties文件,内容如下

#txmanager地址

url=http://127.0.0.1:8899/tx/manager/

方式二: 自定义url的配置.

编写配置文件到application.properties文件下

key:tm.manager.url

如tm.manager.url=http://127.0.0.1:8899/tx/manager/。

重写读取配置文件的类TxManagerTxUrlService。

注:同时也要添加普通的spring事务注解

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/206238.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 下午4:08
下一篇 2026年3月19日 下午4:09


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号