Nacos 作为 Seata 配置中心时,项目启动报错找不到服务。如何排查,如何处理?
异常: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 开源讨论群”
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
阿里云拥有国内全面的云原生产品技术以及大规模的云原生应用实践,通过全面容器化、核心技术互联网化、应用 Serverless 化三大范式,助力制造业企业高效上云,实现系统稳定、应用敏捷智能。拥抱云原生,让创新无处不在。