zoukankan      html  css  js  c++  java
  • Redis之Sentinel

    Redis的主从同步配合哨兵模式,可以有效地提升我们Redis的高可用性。当主节点挂掉之后,哨兵集群可以择优选取从节点作为新的主节点,从而保证服务的可用性。
    Redis Sentinel集群类似一个zookeeper集群,是集群高可用的心脏,一般由3-5个节点组成,即使个别节点挂了,集群还是可以正常运转。

    Sentinel负责持续监控主从节点的健康,当主节点挂掉时,自动选择一个最优的从节点切换成为主节点。客户端来集群连接时,首先连接Sentinel,通过Sentinel查询主节点的地址,然后再连接主节点进行数据交互。
    如果主节点发生了故障,客户端会重新向Sentinel查询地址,得到最新的主节点后,客户端会再次访问新的主节点地址,从而无需重启即可完成节点切换。

    【消息丢失】
    Redis主从是异步复制,所以主节点挂掉时,从节点可能没有全部收到同步消息,此时就发生了数据丢失。Sentinel无法保证消息不丢失,但是也能尽量保证消息少丢失。有两个选项可以限制主从延迟过大。
    min-slaves-to-write 1 # 至少有一个节点在进行正常复制,否则就停止对外写服务,丧失可用性
    min-slaves-max-lag 10 # 定义10S内没有收到从节点的反馈,就意味着从节点同步不正常。

  • 相关阅读:
    xfce4-windowck-plugin的替代品
    git使用Beyond Compare作为diff和merge工具
    Visual Studio设置多个快捷键
    scrapy参数-COOKIES_ENABLED 最权威解释, 帮你避坑
    Linux基础使用
    python 所有的库整理
    Nginx配置详解
    15个常用的javaScript正则表达式
    Redis开发建议
    mysql 同步大量数据小技巧
  • 原文地址:https://www.cnblogs.com/bruceChan0018/p/15754288.html
Copyright © 2011-2022 走看看