RabbitMq Consumer不处理消息

时间:2016-01-27 08:05:53

标签: rabbitmq

我已经将RabbitMQ的使用者作为用C#.NET编写的控制台应用程序。它被编程为永久地监听队列,每当它在队列中找到消息时,它就会处理它。消费者平均每秒处理35条消息。消费者计划在任务计划程序中的系统启动时运行。消费者可以运行3-4天。但是,它们继续运行但不处理任何消息,尽管队列中有消息。当消费者停止并再次启动时,它再次开始正确处理消息。但是,当您手动重新启动时,数百万条消息会排队。有人可以帮我解释一下这种异常行为。我也有其他队列,自几个月以来一直在运行而不停止停止。

请求及时回复。在此先感谢专家。

1 个答案:

答案 0 :(得分:2)

我建议你看看消费者代码,它可能正在运行,但卡在RabbitMQ异常中。听起来奇怪的是它可以运行3-4天。

我有类似的问题,消费者没有消耗队列中的消息,因为我使用“RabbitMQ.Client.QueueingBasicConsumer”将消息出列,并且当队列突然关闭时虽然消费者正在运行但是它在System.IO.EndOfStreamException中。我正在使用“RabbitMQ.Client.Events.EventingBasicConsumer”帮助我解决了这个问题。