在学习RocketMQ过程中出现了启动broker失败的情况,经过排查,现将原因记录在此,希望各位小伙伴不要再入坑
启动失败可能有很多原因,并不一定和我的相同。我这里仅仅说明我遇到的原因
,为大家提供一个方向的思路,还有其他情况导致启动失败,遇到的小伙伴可以和我交流,本人联系方式 jenson_97@163.com
先贴出问题
可以看到后台启动broker失败了
原因:配置的JVM所需内存不足,导致启动Broker失败
解决办法
需要重新为其配置虚拟机内存大小,配置文件是:
这两个文件中包含了对JVM内存的配置
这里需要根据具体的硬件来配置大小,下面给出我的配置,以供参考
runserver.sh:
JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
runbroker.sh
JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m"
重新启动mqbroker
可以看到,这次启动成功了。
如果这次启动仍然失败,可以尝试关闭NameServer后再次启动
关闭NameServer命令:
[root@localhost bin]#sh mqshutdown namesrv
出现这种问题的原因可能不只是这一种,如果这种方法不能解决你的问题,你也可以看看我的另一篇文章,希望能帮助到遇到此类问题心急如焚的你 (✿◠‿◠)。
附上上一篇文章的链接 -> 启动RocketMQ中broker失败的原因二