Redis学习笔记——(15)哨兵:Redis Sentinel

Redis Sentinel 是一种用于实现高可用性的解决方案,自动处理主节点故障发现和转移,避免人工干预。Sentinel 节点监控数据节点和彼此,当多数 Sentinel 认为主节点不可达时,会选择一个从节点晋升为主节点并通知应用方。哨兵系统通过自动化故障转移、监控、通知等功能提升Redis集群的可靠性。
摘要由CSDN通过智能技术生成

Redis学习笔记——(15)哨兵:Redis Sentinel


Redis的主从复制模式下,一旦主节点发生故障,那么需要人工把从节点切换为主节点,同时还要通知服务端主节点的地址,这种操作很多人难以接受,Redis再2.8开始提供了RedisSentinel架构来解决这个问题。

1基础概念

Redis需要概念都有名词解释,首先看一下相关名词解释。

名词 逻辑结构 物理结构
主节点master Redis主服务/数据库 一个独立的Redis进程
从节点slave Redis从服务/数据库 一个独立的Redis进程
Redis数据节点 主节点和从节点 主节点和从节点的进程
Sentinel节点 监控Redis数据节点 一个独立的Sentinel进程
Sentinel节点集合 若干抽象集合 若干个节点进程
Redis Sentinel Redis高可用实现方案 Sentinel节点集合和Redis数据节点进程
应用放 一个或者多个客户端 一个或者多个客户端或者进程
1.1 主从复制问题

(1)Redis的主从复制模式可以将主节点的数据改变同步给从节点,这样从节点就可以起到两个作用:

  • 作为主节点的一个备份,一旦主节点出了故障不可达的情况,从节点可以作为后备“顶”上来,并且保证数据尽量不丢失(主从复制是最终一致性)。

  • 从节点可以扩展主节点的读能力,一旦主节点不能支撑柱大而并发的读操作,从节点可以在一定程度上帮助主节点分担读压力。

    (2)主从复制也带来了以下问题:

  • 一旦主节点出现故障,需要手动将一个从节点晋升为主节点,同时需要修改应用方的主节点地址,还需要命令其他从节点去复制新的主节点,整个过程都需要人工干预。

  • 主节点的写能力受到单机的限制。

  • 主节点的存储能力受到单机的限制。

1.2 非高可用性

Redis主从复制模式下,一旦主节点出现了故障不可达,需要人工干预进行故障转移,无论对于Redis的应用方还是运维方都带来了很大的不便。对于应用方来说无法及时感知到主节点的变化,必然会造成一定的写数据丢失和读数据错误,甚至可能造成应用方服务不可用。对于Redis的运维方来说,整个故障转移的过程是需要人工来介入的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值