SharedQueue已关闭 - RabbitMQ错误消息

时间:2015-06-05 05:53:57

标签: rabbitmq masstransit rabbitmq-exchange

我在visual studio中启动应用程序后立即收到SharedQueue错误。现在这个错误非常频繁。据我所知,我们没有对代码进行任何更改。这段代码工作得很好。

我在网上和SO上看过很多类似的错误,但我没有找到任何有用的帖子。当异常发生时,它不指向任何代码。有关详细信息,请参阅以下错误:

enter image description here

这是错误堆栈跟踪:

 at RabbitMQ.Util.SharedQueue.EnsureIsOpen()
   at RabbitMQ.Util.SharedQueue.Dequeue(Int32 millisecondsTimeout, Object& result)
   at MassTransit.Transports.RabbitMq.RabbitMqConsumer.Get(TimeSpan timeout) in d:\BuildAgent-02\work\19b3d91f8acfae7a\src\Transports\MassTransit.Transports.RabbitMq\RabbitMqConsumer.cs:line 94

我不确定它的relvant,但我也附上了队列状态:

enter image description here

1 个答案:

答案 0 :(得分:0)

我猜想有些事情正在处理一个IEndpoint实例,它可能用于发送或接收消息,而且处理正在关闭传输。这导致接收队列被关闭,而总线没有意识到它。

使用MassTransit时应该处理的唯一对象引用是服务退出时的IServiceBus实例。处置该物体会清除其他一切。