RocketMQ碰到2个问题,怎么解决?[阿里云消息队列MQ]

RocketMQ碰到2个问题,怎么解决?
1、消费消费消息,3天后就不消费了。重启就好了。目前来看3天消费指定tag的消费条数为110条。
2、消息偶发生产失败,返回broker busy的问题。

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
=====这是一个广告位,招租中,联系qq 78315851====
1 条回复 A 作者 M 管理员
  1. 对于第一个问题,我推测可能是消费者在消费消息时存在一些资源泄露或者内存溢出等问题,导致在运行一定时间后无法继续消费消息。建议检查消费者的日志文件,查看是否有任何异常或错误提示。此外,还需要考虑是否有可能是因为消息堆积过多而导致消费者无法正常处理的情况。可以尝试通过调整消费者的消费速度或者增加更多的消费者来缓解这个问题。

    第二个问题,”broker busy”通常表示broker正在繁忙,无法立即处理发送请求。这可能是由于网络延迟、磁盘I/O性能瓶颈等原因造成的。有几个可能的解决方案:

    • 增加broker的并发能力,例如增加硬件资源或优化配置;
    • 调整producer的发送策略,例如增大batch size或减少发送频率;
    • 如果是网络延迟导致的问题,可以考虑在网络层进行优化,如使用更快的网络设备或改善网络拓扑结构。
  2. 2 的原因应该是当前的 broker tps 过高,导致写消息性能下降被放大了。可以从以下几个方面处理:

    • 扩容/水平扩展 broker
    • 开启transientStorePoolEnable【不过会增加数据丢失的可能性】
    • 业务方自行失败重发或者使用同步发送方式,内部默认自行重试2次
      以上个人经验,更权威的还需要大佬来拍板。
      此回答整理自钉群“群2-Apache RocketMQ 中国开发者钉钉群”