【RocketMq】自己RocketMq的踩坑记录

今天在项目中,rocketmq死活发送不成功,一开始是no route info of this topic
后边又是sendDefaultImpl call timeout,忙活了一晚上,好在最后解决了。

1、首先估计很多人遇到过这个问题,nameserver启动失败

这个是因为rocketmq默认分配的内存很大,是8G还是多少来着我忘了,如果我们的服务器没有这么大内存的话则需要修改一下,步骤如下:
在这里插入图片描述
在mqnamesrv.xml里修改一下默认的内存大小,根据自己情况修改
在这里插入图片描述
然后是runbroker.sh中也有需要修改的,也是根据自己情况改
在这里插入图片描述

2、创建topic时失败

我参考 创建topic失败 这篇文章找到了解决方法,再次感谢博主
就是在rocketmq的bin目录下的tools.sh文件下的

JAVA_OPT="${JAVA_OPT} -Djava.ext.dirs=${BASE_DIR}/lib:${JAVA_HOME}/jre/lib/ext

后边加上自己java环境下的ext文件的绝对路径,如果不知道自己java安装在哪的可以用whereis java命令查看,如
在这里插入图片描述

3、sendDefaultImpl call timeout的问题

参考的这位博主的 文章 再次感谢博主
nameserver跟broker启动时都要带上自己服务器的公网ip,不能用localhost
如:nohup ./bin/mqnamesrv -n 你的公网IP:9876 &

nohup sh bin/mqbroker -n 你的公网IP:9876 -c conf/broker.conf autoCreateTopicEnable=true &

在启动broker前需要在conf/broker.conf 中 加入 brokerIP1=你的公网IP

展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 游动-白 设计师: 上身试试
应支付0元
点击重新获取
扫码支付

支付成功即可阅读