【Redis】Redis的高可用和哨兵

1. 基础认识

主节点:负责数据和同步数据到从节点。
从节点:负责数据
实现读写分离提高性能。

rdb文件: 数据文件
命令列表文件:主节点生成rdb文件期间,又收到的数据修改命令。从节点收到rdb文件后还要执行命令列表文件中的命令,使得数据保持一致。

复制偏移量:最开始从0开始,随着数据复制和同步,从节点也更新这个复制偏移量,这样就算从节点临时掉线了,在恢复连接之后和也能知道缺失哪些数据了。

哨兵Sentinel:专门搞一个节点出来当管理员,不用管数据读写,只负责统筹协调,主节点要是挂了,就从从节点里选一个出来当主节点。这个管理员就叫哨兵。可以设置多个哨兵,一个哨兵挂掉还有其他哨兵顶上。
redis的高可用性

2. 新主节点选择标准

  • 给不同节点设置优先级,硬件配置高的优先级别高。

  • 优先选择跟主节点断开连接最短的节点,它的数据会更新一些。

  • 复制偏移量越大的数据越全。

3. 哨兵的工作原理

  • 每隔10秒钟使用INFO命令向主节点询问当前的情况。

  • 每隔1秒PING各节点(包括哨兵),确定节点是否还存活。哨兵发现主节点掉线之后首先判定为主观下线,然后由多个哨兵进行判定,如果有N个哨兵都判定主节点下线了,则认定为客观下线。N可以自定义。

  • 当发现主节点下线之后,进行故障转移,故障转移过程如下:

    • 选一个新的主节点。
    • 让其他从节点从新的主节点同步数据。
    • 把原来旧的主节点改成从节点。

Redis哨兵

4. 参考资料

  • bilibili【趣话Redis第三弹】:BV1MW4y187AH

  • Redis集群:Sentinel哨兵模式(详细图解):http://c.biancheng.net/redis/sentinel-model.html

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值