欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Rabbitmq心跳机制与配置

程序员文章站 2022-06-09 10:07:29
...
Rabbitmq 心跳机制与配置


Rabbitmq心跳机制与配置
            
    
    博客分类: 开源动力  

默认情况下,在3.5.5版本之前,rabbitmq设置的默认与客户端心跳时间为580秒,之后为60秒。
如果时间间隔配置为0,则表示不启用heartbeat检测,两者时间会每隔timeout / 2 进行一次心跳互通。

启用心跳检测后,rabbitmq会为每个tcp连接创建两个进程用于心跳检测,关闭的时候也是成对的方式。

一个进程定时检测tcp连接上是否有数据发送(这里是指rabbitmq发送数据给客户端),如果一段时间内没有数据发送给客户端,则发送一个心跳包给客户端,然后循环进行下一次检测;另一个进程定时检测tcp连接上是否有数据接收,如果一段时间内没有收到任何数据,则判定为心跳超时,最终会关闭tcp连接。另外,rabbitmq的流量控制机制可能会暂停heartbeat检测。另外,rabbitmq的流量控制机制可能会暂停heartbeat检测。

服务端可在可在配置文件rabbitmq.config中增加配置项{heartbeat,Timeout}进行配置,其中Timeout指定时间间隔,单位为秒

服务端可在可在配置文件rabbitmq.config中增加配置项{heartbeat,Timeout}进行配置,其中Timeout指定时间间隔,单位为秒。

如果超过2次心跳无响应,则会认为对方不可到达并关闭连接。此时,客户端通常需要重新连接。具体视客户端的不同而不同。