MST

星途 面试题库

面试题:Redis Sentinel如何检测主观下线状态及相关动态调整机制

请阐述Redis Sentinel检测主观下线状态的基本原理,以及在动态调整过程中,哪些关键参数会影响检测频率和判定条件?
15.4万 热度难度
数据库Redis

知识考点

AI 面试

面试题答案

一键面试

Redis Sentinel检测主观下线状态基本原理

  1. 心跳检测机制:Sentinel会定期向所有被监控的Redis实例发送PING命令。
  2. 主观判定逻辑:如果在一定时间内(由down-after-milliseconds参数控制),被监控的Redis实例没有回复PING命令的PONG响应,Sentinel就会主观地认为该Redis实例处于下线状态,即主观下线(Subjectively Down,简称SDOWN)。

影响检测频率和判定条件的关键参数

  1. down-after-milliseconds
    • 作用:该参数定义了Sentinel判定Redis实例主观下线的时间阈值。当Redis实例在down-after-milliseconds毫秒内,没有回复Sentinel发送的PING命令的PONG响应时,Sentinel就会将其标记为主观下线。
    • 示例:例如设置down-after-milliseconds 30000,表示30秒内没有收到PONG响应,就判定为主观下线。
  2. ping-interval
    • 作用:此参数控制Sentinel向被监控的Redis实例发送PING命令的频率。较小的ping - interval值可以使Sentinel更频繁地检测Redis实例的状态,从而更快地发现可能出现的问题,但同时也会增加网络开销。
    • 示例:默认值为10000毫秒(10秒),即每10秒向Redis实例发送一次PING命令。