RocketMQ踩坑记录
程序员文章站
2022-04-14 09:28:53
...
启动Broker和namesrv时报错
错误内容
JRE version: (8.0_172-b11) (build )
Java VM: Java HotSpot™ 64-Bit Server VM (25.172-b11 mixed mode linux-amd64 compressed oops)
Java运行时环境的内存不足,无法继续,本机内存分配(mmap)未能映射8589934592字节,用于提交保留内存
分析
分配内存不足,默认是分配了8个g,服务器总共只有4个g,需要修改运行时JVM参数配置
解决办法
修改初始化堆空间内存和年轻代的大小。找到bin目录下下的runserver.sh
和runbroker.sh
,编辑
将启动参数修改成如下:JAVA_OPT=”${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn125m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m”
就可以了
启动producer发送消息时报错
错误内容:
connect to <172.26.0.218:10909> failed
分析
据说这个问题的原因是虚拟机多网卡造成指代不明
解决办法
修改broker.conf文件,在文件内加上两行配置信息,其中的两个ip都必须是公网ip,并且需要开放10909端口。
修改完成后重启broker
nohup sh bin/mqbroker -n localhost:9876 -c conf/broker.conf &
broker和namesrv的启动关闭命令:
- rocketmq的启动
进入rocketMQ解压目录下的bin文件夹
-
启动namesrv服务:nohup sh bin/mqnamesrv &
- 日志目录:{rocketMQ解压目录}/logs/rocketmqlogs/namesrv.log
-
启动broker服务:nohup sh bin/mqbroker &
- 日志目录:{rocketMQ解压目录}/logs/rocketmqlogs/broker.log
以上的启动日志可以在启动目录下的nohub.out中看到
- rocketmq服务关闭
关闭namesrv服务:sh bin/mqshutdown namesrv
关闭broker服务 :sh bin/mqshutdown broker