有人了解GitHub如何处理在使用Resque时Redis服务器可能出现的故障或临时不可用吗?
有其他人似乎已经组合出半复杂的解决方案来保留redis-cluster,使用zookeeper(请参见https://github.com/ryanlecompte/redis_failover和Solutions for resque failover redis)。其他人似乎有“穷人版”的故障转移,即在发现连接问题后将从节点切换为主节点而无需redis客户端之间的协调(但这在短暂的不可用情况下可能引起问题)。
问题是:Defunkt是否曾经谈论过GitHub如何处理Redis失败?是否有最佳实践,不涉及zookeeper的故障转移?
关于Resque的原始帖子指出,选择Redis的部分原因是Redis的主从能力,但是该帖子没有描述GitHub如何利用这一点,因为所有工作程序都需要对Redis进行读写访问(请参见https://github.com/blog/542-introducing-resque)。