返回
Redis 高可用:主从、哨兵与集群
百科(权威知识源 · 考试范围)
作者:管理员最后更新:2026/9/4 12:42:17审核:管理员

Redis 高可用:主从、哨兵与集群

单机 Redis 有单点故障风险。Redis 提供主从复制、哨兵(Sentinel)、集群(Cluster)实现高可用与水平扩展。

主从复制

主节点负责写,从节点复制数据,可做读写分离。

同步过程:

  1. 首次同步:从节点向主节点请求,主节点做 RDB 全量同步
  2. 后续同步:主节点将新写命令增量复制给从节点。

从节点数据异步于主节点,故障切换时可能丢失少量数据。

哨兵(Sentinel)

Sentinel 用于监控主从节点,主节点故障时自动故障转移(选新主):

  • 多个 Sentinel 节点互监控,多数派投票选举新主。
  • 实现主从高可用,客户端自动切换连接。

注意:Sentinel 解决的是可用性(主故障自动切换),数据仍由主从复制保证。

集群(Cluster)

Cluster 实现数据分片与水平扩展:

  • 数据按 16384 个 hash 槽分配,每个节点负责一部分槽。
  • key 通过 CRC16 哈希映射到槽位。
  • 节点间 gossip 通信,客户端可访问任意节点(重定向)。
  • 跨槽操作需 key 在同一槽(可用 hash tag {key} 约束)。

缓存三大问题

  • 缓存穿透:查询大量不存在的 key 打穿到数据库 → 用布隆过滤器 / 缓存空值。
  • 缓存击穿:某个热点 key 突然失效,大量并发打库 → 用互斥锁 / 逻辑过期。
  • 缓存雪崩:大量 key 同时失效,导致数据库压力激增 → 过期时间加随机、高可用集群。

总结

  • 主从复制:读写分离、数据备份。
  • 哨兵:监控 + 自动故障转移(高可用)。
  • 集群:分片水平扩展。
  • 穿透/击穿/雪崩需针对性防护。
考试信息
通过标准满分(错一道即与满分无缘,可把整卷答完看解析;重考不限次数)
时间限制不限时
单卷抽题数10 题
成绩窗口2026-09-14 ~ 2026-09-20
积分学费20 积分
支付方式满分后用积分支付(自主决定)
用积分支付:成绩长期保留,参与排名,积分学费含平台资助池;不支付:成绩保留至窗口截止后清空
积分无充值通道;积分不足 10 时,平台自动发放 100 积分。积分不可提现、不可转让、无现金价值。
排行榜(窗口期最短满分用时 · 前 0 名)
当前窗口(2026-09-14 ~ 2026-09-20)

该窗口暂无满分记录

课程(免费学习 · 共 0 门)

暂无课程

登录后可查看我的出题、测试记录并参加满分考试