rocketmq 4.9.3 broker namesrv都正常,当前统计1分钟一个topic超过1000w条消息,
后面该topic就接收不到消息了
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
当 RocketMQ 的一个 Topic 在一分钟内接收超过 1000w 条消息后,导致后续无法接收到更多消息的情况,可能是由于以下原因之一:
消费者消费速度跟不上生产者生产速度:如果您的消费者无法及时处理消息,将导致消息在队列中堆积。当堆积的消息数量超过了 Broker 默认的存储阈值(默认为 10000),新的消息将无法写入到该 Topic 中。您可以通过增加消费者的数量、优化消费者代码或扩容消费者来提高消费速度。
Broker 配置限制:检查 Broker 配置文件(broker.conf)中的参数 maxMsgsNumPerBatchInDisk
和 flushDiskType
的设置。如果 maxMsgsNumPerBatchInDisk
参数较小且磁盘写入速度慢,会导致消息写入磁盘过程拖慢,从而影响消息的接收。可以尝试调整这些参数的值以适应高吞吐量场景。
磁盘空间不足:检查 Broker 所在的服务器磁盘空间是否充足。当磁盘空间不足时,Broker 可能会停止接收新的消息。请确保磁盘有足够的可用空间。
版本兼容性问题:某些 RocketMQ 版本可能存在一些限制或问题。请确保您使用的 RocketMQ 版本稳定,并考虑升级到最新版本以获得更好的性能和稳定性。
阿里云拥有国内全面的云原生产品技术以及大规模的云原生应用实践,通过全面容器化、核心技术互联网化、应用 Serverless 化三大范式,助力制造业企业高效上云,实现系统稳定、应用敏捷智能。拥抱云原生,让创新无处不在。