RabbitMq队列填满了

时间:2015-04-23 18:09:21

标签: java rabbitmq

我们有一个rabbitmq队列,在不同的Linux服务器上有多个java程序从该队列中消耗。有时队列填满,我们需要清除队列和松散消息。

查看客户端计算机上的CPU使用情况,客户端似乎不是bootleneck。它们在多核盒子上的使用率约为25%。因此我猜网络可能是瓶颈。无论如何我可以从rabbitmq的管理界面看到这个吗?

由于

1 个答案:

答案 0 :(得分:1)

您的客户实际上可能失去与RabbitMQ的连接。在经过一段长时间的客户端处于非活动状态后,我遇到了类似的问题 - 例如,当生产者长时间没有填满队列时,客户端没有任何消耗 - 客户端和RabbitMQ之间的TCP连接可能会被中断,通常由负载均衡器,但客户端永远不会发现连接被删除。以下是如何测试它:当您发现客户端不再从队列中消耗时,终止客户端并重新启动它们,并查看队列是否开始减少消息积压。如果是,那就是你的问题。