Redis如何验证主从心跳健康_理解主库发送PING与从库回复REPLCONF ACK机制

Redis主从心跳由应用层PING和REPLCONF ACK命令维持,主库每秒发PING,从库需立即回ACK;若超repl-timeout(默认60秒)未收到ACK,主库即标记该从库为down。Redis主从心跳靠什么维持主从心跳不是靠TCP保活,而是靠应用层的 PING 和 REPLCONF ACK 两个命令来回完成。主库每秒向从库发一次 PING(可配置间隔),从库收到后必须立即回一个 REPLCONF ACK <offset>,其中 offset 是它当前复制到的主库偏移量。为什么从库没回ACK会导致主库标记为"down"主库会记录每个从库最近一次收到 REPLCONF ACK 的时间。如果超过 repl-timeout(默认60秒)没收到,主库就把该从库状态设为 down,并在 INFO replication 中显示 slaveX:state=down。这不是网络断了才触发,而是"没按时回ACK"就判故障。repl-timeout 只控制主库对从库的超时判断,不影响 PING 发送频率(那是 repl-ping-replica-period,默认10秒)从库即使网络通畅,但忙于执行阻塞命令(如 KEYS *、大 LRANGE)、或正在做RDB快照,也可能延迟回ACK主库不会重试发 PING,只等下一轮定时发送;所以单次丢包不致命,持续延迟才危险怎么确认是心跳问题而不是同步卡住看 INFO replication 输出里关键字段比对: 标贝科技 标贝科技-专业AI语音服务的人工智能开放平台

相关推荐
就叫_这个吧2 小时前
Redis从基础命令到核心机制简单介绍
数据库·redis·缓存
dear_bi_MyOnly3 小时前
【MyBatis 操作数据库】
java·数据库·学习·mybatis·学习方法
DBA_G4 小时前
南大通用GBase 8s数据库新存储引擎核心能力二
数据库·微服务·架构
_Jimmy_5 小时前
Agent 溯源精度提升方案
人工智能·python·langchain
衣乌安、5 小时前
数据库事务原理与回滚机制
数据库
CodexDave6 小时前
PostgreSQL 明明有索引却选了 Nested Loop:从行数误判修正执行计划
数据库·postgresql·执行计划·扩展统计·nestedloop
SamChan907 小时前
在Web应用中集成PDF多语言翻译功能:PDFTranslator API实战指南
前端·python·ai·pdf·yapi·机器翻译
天天进步20157 小时前
Python全栈项目--智能办公自动化系统
开发语言·python
颜酱7 小时前
09 | 重构项目结构
人工智能·python·langchain
czhaii8 小时前
STC ai助手单片机工程项目创建实例
数据库·mongodb