Heartbeat超时值
heartbeat超时值定义了RabbitMQ及其client库在多久之后认为TCP连接不可到达。这个值是在client连接RabbitMQ服务器的时候协商好的,在RabbitMQ 3.0及以上版本,broker缺省就会自动尝试进行heartbeat协商,而对于低版本则必须由client在连接时显示地请求协商。该值单位为秒,缺省是60秒。
每隔timeout / 2
秒发送一个Heartbeat消息帧,这个值有时被称作heartbeat interval
,如果连续丢失两个heartbeats消息帧,就认为tcp连接中断了。不同的client表现不同,但是都会关闭tcp连接。当客户端通过heatbeat机制检测到RabbitMQ节点不可到达时,应该尝试重新连接。
不要混淆timeout
和interval
这两个值,RabbitMQ以及官方提供的client库都使用timeout
,而某些client库使用的是interval
。
只要链路上有消息在传递,那么就认为是有效的heartbeat
,client可以不考虑链路上是否有消息传递就发送heartbeat
消息帧,也可以只在必要时才发。
可以把timeout
设置成0来禁用heartbeat
,但是实践中不建议这么用。
Java代码启用Heartbeat
Java客户端代码中在连接之前,通过调用ConnectionFactory#setRequestedHeartbeat
来和服务器协商timeout
值。
ConnectionFactory cf = new ConnectionFactory();// set the heartbeat timeout to 60 seconds
cf.setRequestedHeartbeat(60);
注意:当服务器配置了非0的timeout值情况下,client只能设置比它小的值,不能比它大。
Heartbeat超时值相关推荐
- python paramiko模块中设置执行命令超时值
经常使用paramiko工具对几百台设备进行管理,但是由于服务器本身或是网络原因,有时返回值回不来,然后程序就看在那里一直等待,这个时候后需要设置一个超时值.paramiko模块中执行命令代码如下: ...
- 线程----Monitor(互斥锁)类设置超时值
Monitor类与Lock语句相比,Monitor类的主要优点是:可以添加一个等待被锁定的超时值. 缺点:开销非常大 using System; using System.Collections.Ge ...
- RabbitMQ之心跳检测
Heartbeat超时值 heartbeat超时值定义了RabbitMQ及其client库在多久之后认为TCP连接不可到达.这个值是在client连接RabbitMQ服务器的时候协商好的,在Rabbi ...
- 【超详细】DBCP连接池配置参数说明
<!-- 数据源1 --><bean id="dataSource"class="org.apache.commons.dbcp.BasicDataSo ...
- 微信终端跨平台组件 Mars 系列(三)连接超时与IPPort排序
前言 Mars 是微信官方的终端基础组件,是一个使用 C++ 编写的业务无关.跨平台的基础组件.目前在微信 Android.iOS.Windows.Mac.WP 等多个平台中使用.Mars 主要包括以 ...
- sql server数据库查询超时报错
报错信息如下: 链接服务器"DBJointFrame"的 OLE DB 访问接口 "SQLNCLI10" 返回了消息 "查询超时已过期". ...
- 超低延迟实时流媒体传输技术
正文字数:5401 阅读时长:8分钟 现在云游戏,云应用越来越火,所以超低延迟实时流媒体传输技术的需求应用场景会越来越多.腾讯专家工程师刘泓昊老师在LiveVideoStackCon 2020北京站 ...
- sql server2005 无法修改表,超时时间已到 在操作完成之前超时时
在sql server2005 中,在修改表时,保存的时候显示:无法修改表,超时时间已到 在操作完成之前超时时间已过或服务器未响应 这是执行时间设置过短的原因,可以修改一下设置便能把执行时间加长,以 ...
- Servlet超详解+流程图
1.servlet处理用户请求的完整流程 针对Servlet的每次请求,Web 服务器在调用 service() 方法之前,都会创建 HttpServletRequest 和 HttpServletR ...
- 超宽带 DW1000 API --- dwt_configure (频道,脉冲重复频率,数据速率等)
dwt_configure void dwt_configure(dwt_config_t *config); 此功能负责设置通道配置参数以供两者使用发射器和接收器. 设置由传入的dwt_confi ...
最新文章
- 疯狂Spring Cloud连载(5)Eureka集群搭建
- mvc5入门示例博客(有惊喜)
- SAP云服务新订购量增长103%
- ZZULIOJ 1125: 上三角矩阵的判断
- 面对颇有心机的同事要具备的四个心态
- 大神干货:算法高手郭大顶级经验分享助你轻松通过初赛!
- 【半年总结】---凤凰涅槃,历久弥新
- Java的tomcat的配置_java-Tomcat配置
- Ubuntu翻译PDF论文
- 思维转换感悟与区块链视频资料分享
- Example文件简介
- Hadoop 3.x搭建基础HDFS集群
- Sqli-labs 基本注入篇 (Less1~22)
- 51单片机与LCD1602接口电路与程序
- 网上订餐管理系统的设计与实现
- Python调用腾讯API发送短信验证码
- 树莓派系统安装-Raspberry Pi OS
- Python 国务院政策爬虫(附完整代码)+自动更新+写入数据库
- 【中国是部金融史-读后感】
- 计算机BIOS设置和CMOS设置的区别与联系
热门文章
- 【期末大作业】基于HTML+CSS+JavaScript南京大学网页校园教育网站html模板(3页)
- PINN解偏微分方程--程函方程
- deprecate node-sass@4.9.0 › request@~2.79.0 request has been deprecated, see https://github.com
- S7-1200 PLC与电子秤进行MODBUS RTU通信的具体步骤
- 二次型相似对角化的原因
- java graphics 画箭头_如何在Java中绘制一个指向的箭头线?
- win7计算机内存占用高,win7降低电脑内存占用过高的方法
- 自己做的js甘特图插件
- 怎么访问云服务器上的图片
- 计算机管理服务器,用勤哲Excel服务器实现计算机管理系统