目 录CONTENT

文章目录
MQ

RocketMQ问题(持续修订)

MWSFOT
2024-01-12 / 0 评论 / 0 点赞 / 302 阅读 / 458 字

RocketMQ部署中遇到的问题

  1. 内存不够用
    因为使用的自己的服务器, 内存只有2G. 而rocketMQ最少需要启动两个服务即NameServer 和 broker 启动脚本配置的内存特别大. -Xms1G -Xmx4G 所以对于内存不足的情况. 我们需要修改内存.
    方法:
    image-1705023881685
    共需要修改这几个文件, 具体后缀是sh还是cmd视自己部署的平台. linux里为sh . windows为cmd.
    runbroker.sh为例:
    image-1705024083607
    -Xms-Xmx设为合适的内存大小即可
  2. 推送消息的时候, 报错: sendDefault call timeout
    发送超时, 未连接到borker发送端口.
    broker的默认端口有3个,10911, 10912, 10909。
    10911是remotingServer使用的监听端口,remotingServer主要处理以下三类消息
    producer发送的消息
    conumser在消费失败或者消费超时发送的消息
    consumer拉取消息
    10912是主broker用于监听从broker请求的监听端口
    10909是fastRemotingServer使用的监听端口,与remotingServer相似,但是不包含处理拉取消息的请求。在vipChannelEnabled开启时,producer,consumer发送消息才发送到fastRemotingServer
    所以我们需要对producer开放这几个端口信息
  3. producer发送消息/consumer接收消息注册时提示. connect to null failed
    image-1705024707483
    这是提示我们没有连接到nameserver. 先确认nameserver地址. 及nameserver配置的端口号. 与producer/consumer配置的nameserver地址进行对比. 例如: nameserver地址为: 114.115.154.21 config文件里配置的端口号是
    10909(默认为9876) . 则我们再producer/consumer配置的地址应该为: 114.115.154.21:10909
    如果还没解决掉问题, 这时候就要排除掉配置原因. 检查自己的防火墙配置是否开放端口号. ip是否允许连接等等
0

评论区