2012-08-14 36 views
2

我在主控和从属控制器中都评论了“保存”命令,因为我只想在内存缓存中执行操作,而不是保留到文件中。这工作正常,但一旦师父失败,并且在奴隶可以晋升为主人(它实际上冻结了一分钟)之前,它开始刷新数据。我怎样才能防止从站刷新数据。当MASTER关闭时,Redis SLAVE刷新数据

感谢 扎菲尔

回答

1

事实上,从没有刷新数据的主下山时。

它与主设备启动SYNC(刷新数据),当它与主设备失去连接并重新建立连接时。

IMO,问题是主站立即重新启动,所以从站可以重新连接之前,已被提升为主站。

您应该延迟主站的重启,直到从站升级完毕。根据HA的自动化程度,可能不太方便。一个简单的(但不是非常可靠的)解决方案就是延迟Redis实例的启动脚本。应该计算延迟,以便您100%确定从站在超时之前将被提升。更复杂的解决方案是尝试连接主设备的启动脚本中的从设备,并在允许启动之前运行INFO命令以检查其状态。

更多信息请参见下面的讨论:

https://groups.google.com/d/topic/redis-db/wmRSuIgHcEs/discussion

+0

是主立即重新启动,但过于立即设置为SLAVE。并且由于主机在主机停机后立即冻结,它需要一段时间才能解冻并设置为MASTER,那时我认为这太迟了。将尝试你所建议的选项。谢谢 – mzafer 2012-08-16 17:40:43