开发者社区 > 云原生 > 正文

Nacos 作为 Seata 配置中心时,项目启动报错找不到服务。如何排查,如何处理?

Nacos 作为 Seata 配置中心时,项目启动报错找不到服务。如何排查,如何处理?

展开
收起
真的很搞笑 2023-05-30 16:05:19 528 0
1 条回答
写回答
取消 提交回答
  • 异常:io.seata.common.exception.FrameworkException: can not register RM,err:can not connect to services-server.

    查看nacos配置列表,seata配置是否已经导入成功

    查看nacos服务列表,serverAddr是否已经注册成功

    检查client端的registry.conf里面的namespace,registry.nacos.namespace和config.nacos.namespace填入nacos的命名空间ID,默认"",server端和client端对应,namespace 为public是nacos的一个保留控件,如果您需要创建自己的namespace,最好不要和public重名,以一个实际业务场景有具体语义的名字来命名

    nacos上服务列表,serverAddr地址对应ip地址应为seata启动指定ip地址,如:sh seata-server.sh -p 8091 -h 122.51.204.197 -m file

    查看seata/conf/nacos-config.txt 事务分组service.vgroupMapping.trade_group=default配置与项目分组配置名称是否一致

    telnet ip 端口 查看端口是都开放,以及防火墙状态 注:1.080版本启动指定ip问题,出现异常Exception in thread "main" java.lang.RuntimeException: java.net.BindException: Cannot assign request address,请升级到081以上版本 2.项目使用jdk13,启动出现 Error: Could not create the Java Virtual Machine. Error: A fatal exception has occurred. Program will exit. 如环境为sh,替换脚本中最后一段: exec "$JAVACMD" $JAVA_OPTS -server -Xmx2048m -Xms2048m -Xmn1024m -Xss512k -XX:SurvivorRatio=10 -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=256m -XX:MaxDirectMemorySize=1024m -XX:-OmitStackTraceInFastThrow -XX:-UseAdaptiveSizePolicy -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath="$BASEDIR"/logs/java_heapdump.hprof -XX:+DisableExplicitGC -XX:+CMSParallelRemarkEnabled -XX:+ UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=75 -verbose:gc -Dio.netty.leakDetectionLevel=advanced -classpath "$CLASSPATH" -Dapp.name="seata-server" -Dapp.pid="$$" -Dapp.repo="$REPO" -Dapp.home="$BASEDIR" -Dbasedir="$BASEDIR" io.seata.server.Server "$@",此回答整理自钉群“3群-Seata 开源讨论群”

    2023-05-30 16:15:22
    赞同 展开评论 打赏
问答分类:
问答地址:

阿里云拥有国内全面的云原生产品技术以及大规模的云原生应用实践,通过全面容器化、核心技术互联网化、应用 Serverless 化三大范式,助力制造业企业高效上云,实现系统稳定、应用敏捷智能。拥抱云原生,让创新无处不在。

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载