用redis-sentinel做redis集群,当master挂掉后,会将一个slave当做master,这样程序中的配置是不是必须改成新master的ip才行,这样好麻烦,redis-sentinel内置的有没有办法来解决这个问题,是不是必须用keepalive?还有更好的解决办法么?
2 回答
慕盖茨4494581
TA贡献1850条经验 获得超11个赞
根据Redis关于SentinelClient的文档,您的程序通常需要连接到Sentinel,监听failover的事件(switch-master)。当failover发生时,您通常需要将你的Redis客户端重新连接到新的master并验证其身份(ROLE)。具体建议步骤在文档中有相当详细的描述。另外,您可以选择支持Sentinel的Redis客户端库来替代现有的连接程序,以避免自己实现上述步骤的麻烦。有一些库已经支持这一功能了,请对应查找您所用的语言。
添加回答
举报
0/150
提交
取消