RocketMQ 4.7.1 报错not available now, maybe disk full, maybe your broker machine memory too small
报错背景
今天在Mac上安装了rocketmq 4.7.1的最新版本,程序调用的时候,出现了报错信息如下:
Caused by: org.apache.rocketmq.client.exception.MQBrokerException: CODE: 14 DESC: service not available now, maybe disk full, CL: 0.92 CQ: 0.92 INDEX: 0.92, maybe your broker machine memory too small.
For more information, please visit the url, http://rocketmq.apache.org/docs/faq/
at org.apache.rocketmq.client.impl.MQClientAPIImpl.processSendResponse(MQClientAPIImpl.java:665) ~[rocketmq-client-4.7.1.jar:4.7.1]
at org.apache.rocketmq.client.impl.MQClientAPIImpl.sendMessageSync(MQClientAPIImpl.java:505) ~[rocketmq-client-4.7.1.jar:4.7.1]
at org.apache.rocketmq.client.impl.MQClientAPIImpl.sendMessage(MQClientAPIImpl.java:487) ~[rocketmq-client-4.7.1.jar:4.7.1]
at org.apache.rocketmq.client.impl.MQClientAPIImpl.sendMessage(MQClientAPIImpl.java:431) ~[rocketmq-client-4.7.1.jar:4.7.1]
at org.apache.rocketmq.client.impl.producer.DefaultMQProducerImpl.sendKernelImpl(DefaultMQProducerImpl.java:854) ~[rocketmq-client-4.7.1.jar:4.7.1]
at org.apache.rocketmq.client.impl.producer.DefaultMQProducerImpl.sendDefaultImpl(DefaultMQProducerImpl.java:584) ~[rocketmq-client-4.7.1.jar:4.7.1]
... 87 common frames omitted
问题定位
- 检查磁盘空间,已用空间是95%
- RocketMQ的默认设置只是支持90%,超过则提示空间不足
解决方案
进入到rocketmq的安装目录下
vi bin/runbroker.sh
在里面增加一行
JAVA_OPT="${JAVA_OPT} -Drocketmq.broker.diskSpaceWarningLevelRatio=0.99"
保存后重启broker
相关命令
- 启动nameserver
nohup sh bin/mqnamesrv &
- 启动broker,这条命令增加参数:自动创建topic
nohup sh bin/mqbroker -n 127.0.0.1:9876 -c conf/broker.conf autoCreateTopicEnable=true &
- 关闭broker命令
sh bin/mqshutdown broker
- 关闭nameserver命令
sh bin/mqshutdown namesrv
更多命令可以参考官方文档:http://rocketmq.apache.org/docs/quick-start/
应用案例
版权声明:本文为bufegar0原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。