Evolution
Тема интерфейса

Репликация в Managed Redis®

Репликация — это процесс дублирования данных мастер-узла на его реплику или несколько реплик. С помощью репликации в Redis® осуществляется высокая доступность и автоматическое переключение при отказе мастера.

Репликация в Redis® работает следующим образом:

  • Когда подключение между мастером и репликой стабильно, мастер посылает реплике поток команд, чтобы продублировать изменения данных. Изменениями могут быть новые записи клиента, устаревшие или удаленные ключи и все прочие действия, которые вносят изменения в данные на мастере.

  • Если связь между мастером и репликой обрывается, реплика пытается восстановить связь и продолжить работу с частичной ресинхронизацией. Это значит, что реплика попытается принять часть потока команд, которые были упущены из-за потери связи.

  • Если частичная ресинхронизация невозможна, реплика делает запрос о полной ресинхронизации. Это инициирует более сложный процесс, при котором мастер должен создать снапшот всех своих данных, направить его реплике, а затем продолжить отправку потоков команд.

По умолчанию Redis® использует асинхронную репликацию, что уменьшает время задержки и повышает производительность.

Подробнее о репликации в Redis® читайте в официальной документации.

Autofailover

Для повышения надежности в кластерах типа Master/Replica используется Redis Sentinel. Инструмент отслеживает состояние всех узлов в кластере и выполняет автоматическое переключение ролей (autofailover) при отказе мастера, назначая одну из доступных реплик новым мастером и обновляя оставшиеся реплики для синхронизации. Это минимизирует время простоя и обеспечивает постоянную доступность.