面试题答案
一键面试触发条件
- 主观下线定义:当一个Redis实例与Sentinel之间的连接断开,或在一定时间内未响应Sentinel的PING命令时,Sentinel会将该实例标记为“主观下线”(Subjectively Down,简称SDOWN)。这意味着从单个Sentinel的视角来看,这个实例似乎已经不可用了。
- PING命令检测:Sentinel会定期向被监控的Redis实例发送PING命令。如果在规定的时间内(由配置参数
down-after-milliseconds
控制)没有收到实例的回复,Sentinel就会认为该实例主观下线。
主要配置参数
- down-after-milliseconds:
- 作用:这个参数用于指定Sentinel判断一个Redis实例主观下线的时间阈值,单位是毫秒。
- 示例:在Sentinel的配置文件中,如
sentinel monitor mymaster 127.0.0.1 6379 2
这一行定义了要监控的主节点信息,紧接着可以配置sentinel down-after-milliseconds mymaster 30000
,表示如果30秒(30000毫秒)内Sentinel没有收到该主节点的有效回复,就将其标记为主观下线。
Sentinel检测主观下线状态主要基于PING命令的响应情况,通过 down-after-milliseconds
配置参数控制判断的时间阈值,单个Sentinel基于此机制对所监控的Redis实例进行可用性的初步判断。