Redis哨兵模式

1 原理

        哨兵模式是一种特殊的模式,是主从模式的升级版,因为主从的出现故障后,不会自动恢复,需要人为干预。哨兵模式是Redis高可用的一种实现方案。哨兵是一个独立的进程, 可以实现对Redis实例的监控、通知、自动故障转移。具体如下:
        (1)监控(Monitoring) :哨兵(sentinel) 会不断地检查你的Master和Slave是否运作正常。
        (2)提醒(Notification) : 当被监控的某个Redis出现问题时, 哨兵(sentinel) 可以通过 API 向管理员或者其他应用程序发送通知。
        (3)自动故障迁移(Automatic failover) :当一个Master不能正常工作时,哨兵(sentinel) 会开始一次自动故障迁移操作,它会将失效Master的其中一个Slave升级为新的Master, 并让失效Master的其他Slave改为复制新的Master; 当客户端试图连接失效的Master时,集群也会向客户端返回新Master的地址,使得集群可以使用Master代替失效Master。

2 优点

       (1) 哨兵模式是主从模式的升级版,所以在系统层面提高了系统的可用性、性能和稳定性。当master宕机的时候,能够自动进行故障恢复,不需要人为的干预。

        (2)哨兵与哨兵之间、哨兵与master之间能够进行及时的监控,心跳检测,及时发现系统的问题,这都是弥补了主从的缺点。

3 缺点

        (1)哨兵一主多从的模式同样也会遇到写的瓶颈,已经存储瓶颈,若是master宕机了,故障恢复的时间比较长,写的业务就会受到影响。

        (2)增加了哨兵也增加了系统的复杂度,需要同时维护哨兵模式。

4 搭建部署

        在一般情况,统筹兼顾数据完整性和方案经济性,一般最优解是采用一主两从三哨兵的模式。但记住哨兵尽量是奇数个,因为要避免发生脑裂。本着总结是为了更好的运用,这里就大致整理一下之前项目中使用的Redis哨兵模式(Sentinel)的搭建方式,并演示一下数据如何同步,故障如何自动转移。

服务器
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值