You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

RabbitMQ集群高内存占用问题排查与解决求助

问题背景
  • 生产环境使用3节点RabbitMQ 3.10.25集群
  • 集群包含队列:
    • 1个classic队列
    • 1个处理NServiceBus命令的quorum队列(依赖NServiceBus.RabbitMQ 8.0.2包)
    • 1个名为error的quorum队列
    • 28个NServiceBus quorum队列(命名格式为nsb.v2.delay-level-xx)
  • 流量现状:仅classic队列每秒处理2条消息,其余quorum队列无业务流量
异常表现
  • 运行数小时后,承载classic队列的节点内存稳定,另外2个节点内存占用已达内存水位线
  • 节点存在大量持续增长的预分配未使用内存(preallocated unused memory),other_ets表占用达1.2GB且持续上升
  • 写入/同步IO偏高,即使无生产者/消费者连接,内存仍持续增长
排查关键发现
  • UPDATE1:无生产者/消费者连接时,写入/同步IO仍偏高,内存持续增长
  • UPDATE2:队列nsb.v2.verify-stream-flag-enabled显示Cluster is in minority状态
  • UPDATE3:执行rabbitmqctl生成的内存报告显示:allocated_unused占比65.04%(2.4707GB)、other_ets占比31.74%(1.2057GB),两者占比过高
  • UPDATE4:安装Top Processes插件后发现,rabbit_stream_coordinator对应的ra_coordination_log_ets表内存反复增长且无法释放
  • UPDATE5:确认问题根源为NServiceBus创建的stream队列nsb_v2_verify-stream-flag-enabled,日志显示osiris副本连接失败;删除该队列后内存占用恢复稳定,但重启应用后该队列会被自动重建,且仍显示Cluster in minority状态
求助问题
  1. Cluster is in minority状态的含义是什么?是否会引发上述内存问题?
  2. 解决该内存占用问题的最佳方案是什么?
  3. RabbitMQ或NServiceBus是否有相关配置可降低内存使用?

内容的提问来源于stack exchange,提问作者Odrai

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 01:57:25