【redis】redis主从心跳

1.心跳 

主从建立复制后,他们之间维护着长连接并彼此发送心跳命令。
主从心跳判断机制:
(1)主从节点彼此都有心跳检测机制,各自模拟成对方的客户端进行通信,通过  
client list命令查看复制相关客户端信息,主节点的连接状态为Flags=M,
从节点的连接状态为flags=S; 
(2)主节点默认每隔10s对从节点发送ping命令,判断从节点的存活性和连接状态。
可通过参数 repl-ping-slave-period 控制发送频率。
192.168.1.7:6380> config get repl-ping-slave-period
1) "repl-ping-slave-period"
2) "10"
(3)从节点在主线程中每隔1秒发送 relconf ack {offset}命令,给主节点上报 
自身当前的复制偏移量。replconf 命令主要作用如下:
实时检测主从节点网络状态。
上报自身复制偏移量,检查复制数据是否丢失,如果从节点数据丢失,再从主节点
的复制缓冲区中拉取丢失数据。
实现保证从节点的数量和延迟性功能,通过 min-slaves-to-write,min-slaves-max-lag 
参数配置定义。
192.168.1.7:6380> config get min-slaves-to-write
1) "min-slaves-to-write"
2) "0"
192.168.1.7:6380> config get min-slaves-max-lag
1) "min-slaves-max-lag"
2) "10"

主节点根据 replconf 命令判断从节点超时时间,体现在 info replication 统计中 
的lag信息中,lag 表示从节点最后一次通信延迟的秒数,正常延迟应该在0和1之间。
如果超过 repl-timeout 配置的值(60s),则判定从节点下线并断开复制客户端连接。
即使主节点判定从节点下线后,如果从节点重新恢复,心跳检测会继续进行。

注意:
为了减低主从延迟,一般把redis主从节点部署在相同的机房、同城机房,避免网络 
延迟和网络分区造成的心跳中断等情况。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值