redis脑裂问题

1、redis哨兵下如何防止脑裂
哨兵模式下,哨兵判断master下线的原理是:哨兵会不断的发送ping请求给master,如果master超过一定的时间没有回复,哨兵会将master设置为主管下线,然后哨兵会询问其他的哨兵master的状态,如果超过一定配额的哨兵认为master下线,则master被认为是客观下线。如果配额设置的比较低,那么就会出现脑裂,即某一些sentinel脱离网络,然后认定某个master下线,其实某个master并没有宕机。
解决的方案是:哨兵的数量要配置为奇数,然后认为master下线的配额要设置为大于n/2+1,这样哨兵就可以防止脑裂。
master也需要做一些配置,比如master脱离集群后,因为没有sentinnel能与其进行沟通,所以还是master的状态,某些客户端还可以进行请求,还可以写,这样也会丢失更新。 解决方案是:配置min-slave-to-write,min-slave-max-lag,这样就可以避免master脑裂。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值