TX不生产事务,只是事务的搬运工!
1、必须保证@LcnTransaction、@Transactional两个注解的先后顺序,@LcnTransaction在前
2、调试时需要适当的增大TxManage中分布式事务执行总时间(ms)的设定=>tx-lcn.manager.dtx-time. 默认为36000,否则超过时会出现NullPointerException异常
3、真实环境需解决服务集群部署的问题,参考:https://www.jnnvc.com/archives/5987
4、Tx-LCN TM docker部署,tx-lcn.manager.host是一个坑,参考:https://blog.csdn.net/qq_42714869/article/details/90514762
配置宿主机IP,linux以jar包方式启动,在Manager平台IP为192.168.1.126,此时TC启动没问题
配置0.0.0.0,linux docker打包镜像启动,在Manager平台IP为0.0.0.0,此时TC启动配置tx-lcn.manager.host=192.168.1.126将连接不上
环境同上,将IP配置为真实,打包镜像后,效果同上
根据官方解释地方在5.0.2上做了调整,我们会将设置tx-lcn.manager.host作为参数绑定在tm上,但是由于我们给的默认值为127.0.0.1.导致的问题。
解决方案:写ip 或 为“”
tx-lcn.manager.host=192.168.3.63
tx-lcn.manager.host=
https://github.com/codingapi/tx-lcn/issues/261
尝试将设置tx-lcn.manager.host=任然不行,最终将TM Socket端口改变为8071后成功!
docker build -t txlcn-tm:v1.0.2 .
docker run -d -p 7970:7970 -p 8070:8070 --name txlcn-tm txlcn-tm:v1.0.2
后续会更新集群方面的坑。。。