sentinel 架构

sentinel 是什么?

  • sentinel 也是 redis 进程,通常会启动多个 sentinel;
  • 这些进程不存储数据,只对 redis 节点进行故障判断,完成 redis 节点的故障转移,在故障迁移完成后通知客户端;
  • 客户端从 sentinel 获取 redis 信息;

sentinel 提供的功能

  • 故障发现;
  • master 挂了自动故障转移,并通知客户端;
  • 配置中心,客户端第一次连接是通过 sentinel 完成的;

sentinel 的局限

  • 在读写分离的情况下,对 slave 的故障无法完成自动迁移,只能自定义客户端,通过监听 sentinel 发出的三件事完成自定义的 slave 故障迁移逻辑,还是挺麻烦的,建议使用 cluster 的方式;

sentinel 故障转移过程

  • 多个 sentinel 发现并确认 master 有问题;
  • 选举出一个 sentinel 作为领导;
  • 选出一个 slave 作为 master;
  • 通知其余 slave 成为新 master 的 slave;
  • 通知客户端主从变化;
  • 等待老 master 复活成为新 master 的 slave;

注:

  • sentinel 可以监控多套 master/slave 集群,每套 master/slave 集群用 master-name 作为标识;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值