zoukankan      html  css  js  c++  java
  • redis 10 哨兵

    1. 哨兵简介

    1. 用来不断地检查master和slave是否运行正常
    2. 当被监控的服务器出现问题时,向其他(哨兵间,客户端)发送通知
    3. 断开master与slave之间的连接,选一个slave作为新的master,将其他slave连接到该master,并告知服务端新的服务器的地址
    注意: 哨兵也是一台redis,只是不提供数据服务,哨兵数量通常配置为单数

    2. 监控阶段

    1. 图示

    3. 通知阶段

    1. 图示

    4. 故障转移阶段

    1. 哨兵之间有一个互相的通信,如果其中一个获取到了master的信息,就会发送给其他哨兵。当一个哨兵发现连不上master时,其他哨兵就会去自行尝试,如果超过半数的哨兵都连不上,则认为master掉线,推出一个新的master出来
    2. 在确认master掉线之前,哨兵之间也会推举出一个哨兵来决定选择哪一个slave作为master
    3. 哨兵在选择新的master时,遵循以下原则
      a. 在线的slave
      b. 响应快的
      c. 与master断开时间短的
      d. 优先原则
        1. 优先级
        2. offset
        3. runid


  • 相关阅读:
    linux命令之free篇
    linux操作之逻辑分区与交换分区篇
    linux之软连接,硬连接篇
    Linux之磁盘分区篇
    Linux命令之vi篇
    JVM总结-垃圾回收算法
    JVM总结-字节码
    JVM总结-java对象的内存布局
    JVM-synchronized怎么实现的?
    JVM总结-invokedynamic
  • 原文地址:https://www.cnblogs.com/JackShi/p/15610905.html
Copyright © 2011-2022 走看看