我知道redis不支持多主机,但我在这里尝试实现ha目标,而不是同时向两个主机传播写操作。
我目前正在使用两个redis服务器(redisa和redisb)进行主动/被动设置(只有一个服务器同时处于活动状态,如果第一个服务器出现故障,另一个服务器将接管)。
我将通过以下方式改进此设置:
在两个redis.conf上设置“slave read only no”
在redisa conf中,我会设置“slaveof redisb 6379”
在redisb conf中,我会设置“slaveof redisa 6379”
这是正确的设置吗?
我的理解是,从“其他”服务器复制的更改不会在循环无限循环中再次考虑。对吗?
在这个设置之上,我将使用一个虚拟ip,当a下降时从redisa移到redisb,当它恢复时移回redisa(故障回复将等待同步完成),这也是正确的设置吗?
同时在两台redis上写字安全吗(就像mysql主设置一样)。当然,我知道,如果同一个密钥的两次连续写入到两个不同的服务器,我可能会有不一致的写入(如果写入到redisb之后立即在redisa上读取,也是一样的)。但是,对于前端节点上的会话粘性和其他一些假设(如在服务器之间拆分密钥),这是可以接受的,同时可以保证某种ha。
非常感谢
暂无答案!
目前还没有任何答案,快来回答吧!