当前位置:网站首页 > Haskell函数式编程 > 正文

redis哨兵客户端连接(redis哨兵模式连接命令)



需要做下面这些事情:

  • 将宕机的master下线
  • 一个slave作为master
  • 通知所有的slave连接新的master
  • 启动新的master与slave
  • 全量复制*N+部分复制 *N

哨兵(sentinel)在redis集群架构中是一个非常重要的组件,其主要功能有下面这些:

  • 监控
    不断的检查master和slave是否正常运行
    master存活检测、master与slave运行情况检测
  • 通知(提醒)
    当被监控的服务器出现问题时,向其他(哨兵间、客户端)发送通知
  • 自动故障转移
    断开master与slave连接,选取一个slave作为master,将其他slave连接到新的master,并告知客户端新的master的地址。

注意: 哨兵也是一台redis服务器,只是不提供数据服务,通常哨兵配置数量为单数

启动哨兵指令:

redis-sentinel 配置文件.conf

连接命令:

redis-cli -p 端口号

监控阶段

redis cli 如何链接哨兵模式 <a href='/tag/120'>操作</a> redis客户端连接哨兵_服务器

redis cli 如何链接哨兵模式 操作 redis客户端连接哨兵_redis_02

工作内容:
  1. 第一个sentinel与master进行连接后,发送info指令
  2. 建立长期cmd连接,sentinal同时保存所有哨兵状态,master中记录redis实例信息
  3. 通过master中的slave信息与其中的slave进行连接并发送info指令
  4. 第二个sentinel进入,与master连接发送info指令,发现master端的sentinels
    有信息
  5. 与第一个sentinel建立连接并同步信息,互相发送ping命令保证对方在线,并于master建立cmd连接

通知阶段

redis cli 如何链接哨兵模式 操作 redis客户端连接哨兵_配置文件_03

故障转移阶段

故障转移阶段引起原因:其中一台sentinel多次获取master状态失败。

发现master宕机
选出sentinel担任处置工作:

投票机制:每个sentinel均是投票者也是参选者,例如:当前有五台sentinel,其中4台sentinel会同时向剩余的一台sentinel发送自己的信息,剩余这台的sentinel会将自己的票投给信息最先到达的sentinel,最后通过所有投票情况选出获得票数最多的sentinel。

通过投票机制产生的sentinel从服务器列表中选择出备选的master

担任master的选择条件:

  • 在线的
  • 响应速度快的
  • 与原master断开时间短的
  • 优先原则:
  • 优先级
  • offset
  • runid
发送指令

当原来的master重新启动后,会变成看slave节点。

到此这篇redis哨兵客户端连接(redis哨兵模式连接命令)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • vbf文件格式(怎么用vb打开frm文件)2025-04-30 08:45:09
  • vs怎么用(vs怎么用scanf函数)2025-04-30 08:45:09
  • mysql窗口函数是什么(mysql 窗口函数有哪些)2025-04-30 08:45:09
  • pivot函数表格用法(pivot函数 hive)2025-04-30 08:45:09
  • vbfor循环step(vbfor循环语句格式)2025-04-30 08:45:09
  • 供应链支付方式是什么意思(什么叫供应链支付)2025-04-30 08:45:09
  • 支付方式图片国际结算(支付结算的方式有())2025-04-30 08:45:09
  • 合并数组的函数(合并数组算法)2025-04-30 08:45:09
  • sigmod激活函数(sigmod激活函数表达式)2025-04-30 08:45:09
  • 支付方式T/C(支付方式英文)2025-04-30 08:45:09
  • 全屏图片