Seata1.3.0踩坑

目录

问题描述

​ SpringColud集成Seata1.3.0,Seata是部署在服务器上的,并且注册到Nacos上。报错无法连接到Seata问题endpoint format should like ip:port然后引出问题二。

错误

问题一(Failed to get available servers: endpoint format should like ip:port)

​ 在编译启动时发现clusterName : "null"经过检测发现Nacosservice.vgroupMapping.my_test_tx_group<—(就是这里),和项目的中的配置文件不一样。

问题检查

​ 挖槽多了一个s,小问题不慌。
截屏2023-04-27 11.56.28

​ 项目正常启动了,结果发现出现了一个新的的问题,就是问题二的 0304 register RM failed或者0101 can not connect

问题二(NettyClientChannelManager : 0304 register RM failed或者0101 can not connect)

​ 经过排查发现在Nacosseata-server注册的端口出现了问题,注册的是内网IP,那就简单了要么内网穿透,要么指定IP端启动。

nohup sh seata-server.sh -h '公网IP' -p 8091 > seata.log 2>&1 &,问题解决了nacos中也是公网IP这样子可以连接了。测试一下般高版本比如1.6.2的Seata就不会出现这种问题。


​ 本以为这样就可以成功了,结果还是报错。经过排查发现,Nacos中的的配置出现了问题,里面是配置正是127.0.0.1:8091

seats配置中心default组
截屏2023-04-27 11.57.20

改了Nacos地址后发现还是一直在读取本127.0.0.1:8091,难道不是从远程Nacos获取的嘛?经过测验发现,确实是读取的远程Nacos的配置,唯独service.default.grouplist里面的配置木有读取到。挖槽?我****,你****!
你问题是真的多

​ 最终解决办法在对应的项目里的文件添加如下配置(可能会有其他办法目前还没有找到):

seata:
  application-id: ${spring.application.name} 
  tx-service-group: my_test_tx_group
  config:
    type: nacos
    nacos:
      #需要和server在同一个注册中心下
      serverAddr: nacosIP:8848
      #需要server端(registry和config)、nacos配置client端(registry和config)保持一致
      group: SEATA_GROUP
  registry:
    type: nacos
    nacos:
      #需要和server端保持一致,即server在nacos中的名称,默认为seata-server
      application: seata-server
      serverAddr: nacosIP:8848
      #需要server端(registry和config)、nacos配置client端(registry和config)保持一致
      group: SEATA_GROUP

总结

​ Seata1.3.0,我****,你****!😡🔥

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CrankyKoi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值