分布式事务Seata错误——can not register RM,err:can not connect to services-server.

Seata服务端配置搭建完成后,又遇到了新的问题————业务端启动无法连接Seata服务端,报错信息如下:

0101 can not connect to ip地址:8091 cause:can not register RM,err:can not connect to services-server.

0304 can not connect to IP地址:8091 cause:can not register RM,err:can not connect to services-server.

以上两个错误信息和我们在配置file.conf文件中的 default.grouplist配置有关系,当ip配置为localhost或者127.0.0.1的时候报错0101,如果是内网ip则是0304,这里最好配置为外网地址。
```
service {
  #vgroup->rgroup
  vgroup_mapping.zhaoxingban-member-fescar-service-group = "default"
  #only support single node
  default.grouplist = "127.0.0.1:8091"
  #degrade current not support
  enableDegrade = false
  #disable
  disable = false
  #unit ms,s,m,h,d represents milliseconds, seconds, minutes, hours, days, default permanent
  max.commit.retry.timeout = "-1"
  max.rollback.retry.timeout = "-1"
}
```

这里和启动命令也是有一定关系的:
在本地搭建seata服务端的时候,./seata-server.sh 启动,和上方配置的ip没有任何关系,完全可以正常的链接服务;当我们在云服务器上搭建的seata服务端的时候,在按照上方的命令启动seata服务端则会报上面所提到的错误,因为云服务器的某些限制,是无法正常链接的。这里我们要在启动命令中增加ip和端口号,即可完成正常的链接,

具体命令如下:./seata-server.sh -h 外网ip地址 -p 8091 &

这样就搞定了错误信息了。

接下来我们看一下某些服务会带有守护进程,即使你kill掉进程,它依然还在,我们怎么解决呢?

ps -ef|grep seata 查看seata服务是否关闭?执行命令后,我们看到如下图所示:

![image.png](https://p6-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/485000aac8934fce8706d01a95ecbae7~tplv-k3u1fbpfcp-watermark.image?)

图中可以很秦楚的看到seata服务依然还在运行,则将他kill掉即可。

今天的内容就到这吧,谢谢浏览

更多编程内容,请扫码关注《coder练习生》,如果觉得有用,也可赠送作者一杯咖啡

你可能感兴趣的:(微服务,servlet,服务器,java)