gpt4 book ai didi

rabbitmq - Pika:连接中参数heartbeat有什么作用?

转载 作者:行者123 更新时间:2023-12-02 03:45:48 27 4
gpt4 key购买 nike

我在官方文档和源代码中搜索过它,但没有意义。

我也尝试将其设置为10或1等值,但在rabbitmq管理的Web控制台中仍然显示heartbeat=60。

enter image description here

最佳答案

来自 RabbitMQ 文档:

The heartbeat timeout value defines after what period of time the peer TCP connection should be considered unreachable (down) by RabbitMQ and client libraries. This value is negotiated between the client and RabbitMQ server at the time of connection. The client must be configured to request heartbeats. In RabbitMQ versions 3.0 and higher, the broker will attempt to negotiate heartbeats by default (although the client can still veto them). The timeout is in seconds, and default value is 60 (580 prior to release 3.5.5).

https://www.rabbitmq.com/heartbeats.html

Pika过去在协商时选择服务器和客户端之间的最小心跳值。从0.11开始就不再是这样了。 Pika 选择客户端和服务器之间的最高心跳值(这是 AMQP 客户端的规范)。这意味着,如果您设置的心跳值低于 60 秒,Pika 将始终选择 RabbitMQ 的值,因为它更高。尝试将心跳设置为高于 60 秒,它应该在管理控制台中可见。

不过,如果您确实想将心跳值设置为低于 60 秒(这会适得其反),您仍然可以在 configuration 中设置该值。 .

编辑 2019-01-23: 从 Pika 1.0 开始,此行为 has changed再次。现在,如果客户端和服务器都指定了非零心跳间隔值,Pika 将选择客户端和服务器之间的最低心跳间隔值。如果客户端或服务器未指定心跳间隔值或指定为零,则如果有 1,则采用指定的值,否则采用零(这意味着心跳被禁用)。不过,这并不意味着使用低心跳间隔总是一个好主意。

关于rabbitmq - Pika:连接中参数heartbeat有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46804705/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com