安装rocketmq后启动项目遇到的异常分析和处理方案

RocketmqRemoting - closeChannel: close the connection to remote address[] result: true

问题:

原因分析(所有的都解决掉基本不会再有问题):

1,首先确认nameserver和broker都是健康状态,可以通过官方文档的工具命令测试

1,生产消息

export NAMESRV_ADDR=localhost:9876
sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer

2,接受消息

sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer

2,如果上面没问题,看一下防火墙是否打开,自己的端口号是否开放。

1,rocketmq要开放四个端口:9876,10911,10909,10912 至于这几个端口的说明,可以参考:

2,linux查看端口是否开放命令参考:

阿里云可以用控制台查看安全组的开放端口状态:

3,看一下rocketmq的broker注册到nameserver的ip地址是否是内网,如果是内网,项目无法链接内网也会链接不上。

如果没有工作台,可以进入rocketmq安装目录bin中通过roketmq命令查看brokerip注册到nameservier的ip情况

./mqadmin clusterList -n {nameserverip}:9876
如果是内网,指定注册broker外网解决方案:

1,进入rocketmq根目录

cd /data/tools/rocketmq-all-4.9.0-bin-release

2,编写配置文件,并写好配置

echo “brokerIP1=10.2.x.x” > broker.properties

3,启动 mqnamesrv

nohup sh bin/mqnamesrv &

4,重点:mrbroker 启动时通过 -c 加载配置文件

nohup sh bin/mqbroker -n {nameserverip}:9876 -c /data/tools/rocketmq-all-4.9.0-bin-release/broker.properties &

5,查看结果,通过命令或者控制台查看,此时注册的broker就是外网ip

4,如果以上都没问题,可能是链接超时:

可以加个配置发送消息超时的代码,时间加长一点

以上是在安装rocketmq后启动项目遇到的问题,基本也就这些,欢迎联系我补充,如有帮助,点个赞吧~~~
经验分享 程序员 微信小程序 职场和发展