您现在的位置是:主页 > 数据库技术 > 数据库技术

怎么理解Redis中的哨兵模式

IDCBT2022-01-04服务器技术人已围观

简介本篇内容介绍了“怎么理解Redis中的哨兵模式”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔

本篇内容介绍了“怎么理解Redis中的哨兵模式”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

Redis 主从模式,一旦主节点发生故障,可以将从节点 升为 主节点,同时还要通知客户端更新主节点地址,这样一般是不可行的。所以,Redis 提供了 Redis Sentinel 哨兵机制 来解决这个问题。

主从复制的问题

1. 主从复制的好处

    主节点发生故障,从节点会升级为主节点

    扩展主节点的读能力,分担主节点压力

    2. 存在的问题

      从节点升级主节点的过程需要人工干预,同时要更改客户端Redis服务地址

      主节点写能力、存储能力受到单机限制

      性能的影响:Redis 复制中断 后从节点会发起 psync。此时如果同步不成功,则会进行全量同步,主库执行全量备份的同时,可能会造成毫秒或秒级的 卡顿

      Sentinel 实现原理

      1. 一些概念

      主要功能

        监控 : 不断检查主从服务器是否正常运行

        通知 : 一旦某个节点发生故障,会通知其他节点

        自动故障转移 : 当主节点不能正常工作会自动进行故障转移,从其中一个从节点升级为主节点

        配置提供者 : 客户端不是配置单个节点,而是 Sentinel 节点集合

        主观下线和客观下线

        一般来说,每个 Sentinel 节点会不断的 对其他 Sentinel 节点和 Redis 节点发送 PING,通过是否回复来确认是否在线

          主观下线 : 适用于所有主节点和从节点,如果在 down-after-milliseconds 毫秒内,Sentinel 没有收到目标节点的有效回复,则会判定该节点为主观下线。

          客观下线 : 只使用于主节点,如果主节点发生故障,Sentinel 节点会通过 sentinel is-master-down-by-addr 命令,向其它 Sentinel 节点询问对该节点的状态判断。如果超过 <quorum> 个数的节点判定主节点不可达,则该 Sentinel 节点会判断主节点为客观下线。

          2. 工作原理

            每个 Sentinel1次/s 频率,向其他 Sentinel 节点、Redis 主从节点发送 PING 指令。

            如果一个实例,距离最后有效回复 PING 命令超过 down-after-milliseconds,这个实例被

            标签:

            很赞哦! ()

本栏推荐