HA Resque&Redis

试图避免Resque和Redis的SPOF。 最终,客户端将通过( https://github.com/chrisboulton/php-resque )成为PHP。 在为nginx + php-fpm和MySQL寻找一些可行的HA( mysql master-master作为简单主从提升的方式 )之后,接下来是Resque + Redis。

Resque的标准安装使用本地主机Redis(在DigitalOcean上)。 我很大程度上依赖于Amazon Route 53 DNS故障转移来尝试解决此问题。

resque1.domain.com指向本地主机redis(redis1.domain.com)=>相同的服务器resque2.domain.com指向本地主机redis(redis2.domain.com)=>相同的服务器

使用FAILOVER resque1作为主要和resque2作为辅助resque.domain.com。 这意味着大部分时间(99%),resque1应该被resque2打成热备份。

这让我只需要2个服务器,并确保任何命中resque.domain.com去某个地方


另一种方法是将resque和redis分成4个服务器,如下所示

resque1.domain.com – > redis.domain.com resque2.domain.com – > redis.domain.com redis1.domain.com redis2.domain.com

然后设置DNS故障转移

resque.domain.com – > primary:resque1和secondary:resque2 redis.domain.com – > primary:redis1和secondary:redis2

如果可以的话,我想逃离2个服务器,但是这个第二个设置好多了还是可以忽略不计?

谢谢,克里斯

如果你有一个Redis服务器,那还是一个SPOF。 除了执行常规Redis备份和恢复过程testing之外,还可以通过自动执行configuration和部署来减轻SPOF的风险。 这条路线将要求您全天候查看故障或自动发送configuration。

两台服务器为您提供了一个已知的热故障转移。 这是一个更好的灾难规划scheme。

我不熟悉DNS故障转移,但它看起来在function上类似于负载均衡器VIP和虚拟接口。 这种故障转移模型易于configuration,易于testing,而且非常可靠。