Попытка избежать SPOF для Resque и Redis. В конечном итоге клиентом будет PHP через (https://github.com/chrisboulton/php-resque). Пройдя через и найдя работоспособную HA для nginx + php-fpm и MySQL (настройка mysql master-master как способ простого продвижения master-slave), затем Resque + Redis.
Стандартная установка Resque использует локальный Redis (в DigitalOcean). Я в значительной степени полагаюсь на аварийное переключение DNS Amazon Route 53, чтобы попытаться решить эту проблему.
resque1.domain.com указывает на localhost redis (redis1.domain.com) => тот же сервер resque2.domain.com указывает на localhost redis (redis2.domain.com) => тот же сервер
Сделайте resque.domain.com с FAILOVER resque1 как первичным и resque2 как вторичным. Это означает, что большую часть времени (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 Failover
resque.domain.com -> первичный: resque1 и вторичный: resque2 redis.domain.com -> первичный: redis1 и вторичный: redis2
Я бы хотел уйти на 2 сервера, если могу, но эта вторая установка намного лучше или незначительна?
Спасибо Крис
Если у вас есть один сервер Redis, это все еще SPOF. Вы можете снизить риски этого SPOF, автоматизируя подготовку и развертывание в дополнение к регулярному резервному копированию Redis и тестированию процедур восстановления. Этот маршрут потребует, чтобы вы либо круглосуточно следили за сбоями, либо автоматически отправляли подготовку.
Два сервера обеспечивают заведомо работоспособную горячую отработку отказа. Это гораздо лучший сценарий планирования бедствий.
Я не знаком с аварийным переключением DNS, но функционально он похож на виртуальные интерфейсы и виртуальные интерфейсы балансировщика нагрузки. Эту модель аварийного переключения легко настроить, легко протестировать и очень надежно.