- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
RabbitMQ 允许您“检测”连接,即客户端和服务器不时检查(使用空消息)对方是否仍然存在且可用。到目前为止,一切顺利。
不幸的是,我无法在文档中找到提出合理值的建议的位置。我知道您需要以秒为单位指定心跳,但是现实世界的最佳实践值是多少?
显然,它不应该太频繁(流量),但也不应该太罕见(代理,...)。有什么建议吗?
15秒可以吗? 30? 60? ...?
最佳答案
此答案适用于 RabbitMQ < 3.5.5,对于较新的版本,请参阅 @bmaupin 的答案。
这取决于您的应用程序需求。 RabbitMQ 开箱即用 10 分钟。如果两次未能确认心跳(20分钟不活动),连接将立即关闭,不会发送任何connection.close方法或来自代理端的任何错误。
使用心跳的情况是防火墙关闭了长时间不活动的连接或某些其他不允许您有等待连接的网络设置。
其实hearbeat并不是必须的,来自RabbitMQ config doc
heartbeat
Value representing the heartbeat delay, in seconds, that the server sends in the connection.tune frame. If set to 0, heartbeats are disabled. Clients might not follow the server suggestion, see the AMQP reference for more details. Disabling heartbeats might improve performance in situations with a great number of connections, but might lead to connections dropping in the presence of network devices that close inactive connections.Default: 580
请注意,检测信号间隔太短可能会导致显着的网络开销。请记住,当在监听信号时间间隔内连接上没有其他事件时,将发送监听信号帧。
关于rabbitmq - RabbitMQ 中心跳的合理值是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25984602/
我有一个曾经是 TreeView 控件的菜单,但现在我想让每个项目更加直观,并向树中的每个对象添加更多信息。 我的第一个意图是制作一个代表项目的用户控件,并在运行时将它们添加到面板中。这是一个好方法吗
我是 Docker 新手,想知道是否有可能(并且是一个好主意)在 Docker 容器中进行开发。我的意思是创建一个容器,执行 bash,安装和配置我需要的一切,然后开始在容器内进行开发。 容器将成为我
在 Java 中: Parent obj = new Child(); 我创建了一个 Parent 类型的对象。我假设我只能调用父类中定义的方法。因此,我无法调用 Child 中定义的“附加”方法或访
注意:我省略了其他两个阶段(V 和 W)的代码,示例中不需要。 我很确定,我这样处理“开”和“关”时间的方式并不是一种有效的方式。 我想使用查找表实现“开”和“关”脉动。计时器应与表的当前选定值进行比
当代码中包含 Java instanceof 运算符时,许多人会扬起眉毛并说这是禁忌。例如,在这个 other SO Q&A ,答案说: Note that if you have to use th
我是一名优秀的程序员,十分优秀!