【问题标题】:RabbitMQ / EasyNetQ drops connections when machine very active?当机器非常活跃时,RabbitMQ / EasyNetQ 会断开连接?
【发布时间】:2014-07-30 15:23:08
【问题描述】:

我是 RabbitMQ / EasyNetQ 的新手,我正在努力更好地理解我观察到的行为。我们已经看到,当我们运行 RabbitMQ 的服务器繁忙时,所有 EasyNetQ 连接都会被丢弃。

这是所有客户端同时产生的异常:

System.Exception: 无法连接到 Broker: 'XXXXXX.domain.com', 端口:5672 虚拟主机:'XXXX'。 ExceptionMessage: '没有指定的 端点可达'

当服务器不再忙时,EasyNetQ 会自动重新连接,但我想知道 RabbitMQ/EasyNetQ 在机器忙时断开连接是否是典型的? (或者如果我应该调查我的服务器的性能问题。)

(PS:忙,我只是指从源代码管理更新大型项目,重新部署大型 ASP.NET 应用程序或对大量数据运行 CPU 密集型计算后重新启动它。)。

【问题讨论】:

    标签: rabbitmq easynetq


    【解决方案1】:

    RabbitMQ 代理接受的连接数是有限制的。您是否有可能像使用数据库连接一样快速打开连接,做一些工作,然后关闭它?如果是这样,那不是您应该与经纪人互动的方式。请参阅有关连接的 EasyNetQ 文档:

    https://github.com/mikehadlow/EasyNetQ/wiki/Connecting-to-RabbitMQ

    【讨论】:

    • 感谢您的回复,迈克。我们谈论的是总共两打连接(每个对等方一个),它们是在我的应用程序启动时创建并在它关闭时释放(始终连接)。这应该不是问题。
    • 听起来你做对了。就 EasyNetQ 的使用而言,我没有任何其他建议。我建议在 RabbitMQ 邮件列表中描述您的问题。提供尽可能多的信息。
    • 谢谢。但是,由于您之前已经使用过很多 RabbitMQ,因此您是否亲眼看到当服务器具有“高”负载时连接会下降?对我来说似乎不正常。当根本原因可能是服务器性能时,我可能正在调查症状。
    • 不,我从未见过无缘无故断开连接的情况,而且这是在每天处理数百万条消息的生产系统上。您是否有显示断开连接的 EasyNetQ 日志?
    • 不幸的是,原始评论中发布的异常是我唯一的日志记录。我们的 IEasyNetQLogger 通过 Elmah 将该异常发送给我们。
    猜你喜欢
    • 2017-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-01
    • 1970-01-01
    • 2016-09-15
    相关资源
    最近更新 更多