当我声明/删除队列时,RabbitMQ 随机停止应答,永远挂起。这是我的 c# .net 应用程序中的示例:
_factory = new ConnectionFactory
{
HostName = HostName,
UserName = UserName,
Password = Password,
};
_connection = _factory.CreateConnection();
_channel = _connection.CreateModel();
var replyQueueName = _channel.QueueDeclare(QueueNameReply, true, false, false, null);
我收到“操作超时”的异常。
有趣的是,我什至无法通过管理插件删除队列。它只是停止回答....并保持连接打开。 另一件事:运行“rabbitmqctl list_queues”也挂起,这就是为什么我认为是 rbmq 服务器配置问题。
按照日志:
=INFO REPORT==== 18-Oct-2017::18:04:06 === accepting AMQP connection <0.3288.0> (31.268.289.141:54314 -> 10.0.191.128:5672)
=INFO REPORT==== 18-Oct-2017::18:04:07 === connection <0.3288.0> (31.268.289.141:54314 -> 10.0.191.128:5672): user 'etraffic' authenticated and granted access to vhost '/'
=ERROR REPORT==== 18-Oct-2017::18:07:07 === closing AMQP connection <0.3288.0> (31.268.289.141:54314 -> 10.0.191.128:5672): missed heartbeats from client, timeout: 60s
有人知道这是怎么回事吗?
最佳答案
我在 Windows 机器上运行的 Rabbit 版本遇到了同样的问题。停止并启动 RabbitMQ 服务解决了这个问题。
关于c# - RabbitMQ - QueueDeclare 永远挂起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46814226/