down-after-milliseconds 是 Redis Sentinel 用的参数,用于判定节点主观下线;哨兵进程读取该值,Redis Server 完全不使用它。down-after-milliseconds 是谁在用?谁在读它?这个参数不是 Redis Server 自己用的,而是 sentinel 进程在监控主从节点时,用来判断"我是不是该认为这个节点挂了"的核心依据。它只存在于哨兵配置里(sentinel.conf),Redis 实例本身完全无视它。哨兵对每个被监控的主节点或从节点,单独维护一个"最后一次有效响应时间"每次向目标节点发 PING,如果收到 PONG 或 +PONG,就刷新这个时间如果当前时间 ? 最后一次响应时间 > down-after-milliseconds,哨兵就把它标记为"主观下线(SDOWN)"注意:down-after-milliseconds 是毫秒值,但哨兵实际检查频率约每 100ms 一次,所以真实判定延迟可能略高于设定值。为什么改了参数没生效?常见配置陷阱改完 sentinel.conf 后不重启哨兵进程,或者没用 SENTINEL CONFIG SET 动态推送,参数就是白改。修改配置文件后必须执行 redis-sentinel /path/to/sentinel.conf 重启对应哨兵(不能只 kill -HUP)或者用命令动态更新:SENTINEL CONFIG SET mymaster down-after-milliseconds 5000(mymaster 是监控的主节点别名)多个哨兵实例要各自配置,不存在"主哨兵同步参数"这回事;每个哨兵独立读自己的配置容易漏的一点:如果用容器或 systemd 管理哨兵,改完配置文件后忘记 reload service,也会导致配置未加载。设太小 or 设太大,分别会出什么问题?down-after-milliseconds 不是越小越好,也不是越大越稳,得看网络和负载场景:设太小(如 500): Adobe Image Background Remover Adobe推出的图片背景移除工具
相关推荐
无毁的湖光-Al几秒前
解Bug之路-隔离故障点后业务不恢复?-热点Key处理与亚稳态故障yi0112 分钟前
LeetCode 3. 无重复字符的最长子串|不定长滑动窗口:什么时候更新最大值?2601_9628857215 分钟前
如何用 Python 计算索提诺比率和卡玛比率?l1t17 分钟前
DeepSeek总结的有符号、无符号、未对齐:从汇编到 SQL 的教训小小张说故事19 分钟前
Python 的描述符到底是个啥?property 和 classmethod 底层都靠它,3 个例子讲透kimnoic29 分钟前
Python操作MySQL数据库的两种方式实例分析【pymysql和pandas】外收内放29 分钟前
Python基础语法练习题(64)麦壳饼33 分钟前
SonnetDB SQL Cookbook:常用查询模式速查fanjiu202034 分钟前
flask接收消息外收内放35 分钟前
Python基础语法练习题(65)