Junior — Middle
62
Объясните концепцию Sentinel в системе Redis и его назначение
Компании, где спрашивали
ИнфоТехСервис
Ответ от нейросети
sobes.tech AI
Sentinel в Redis — это система мониторинга и автоматического переключения мастера (failover) в кластере Redis.
Основные функции Sentinel:
- Мониторинг: следит за состоянием мастера и реплик.
- Уведомление: оповещает администраторов или другие системы о сбоях.
- Автоматический failover: при обнаружении недоступности мастера Sentinel выбирает новую реплику, повышает её до мастера и перенастраивает остальных клиентов.
- Конфигурация клиентов: предоставляет клиентам информацию о текущем мастере.
Это повышает отказоустойчивость Redis, позволяя системе продолжать работу даже при сбоях узлов.
Пример использования с Python (библиотека redis-py):
from redis.sentinel import Sentinel
sentinel = Sentinel([('localhost', 26379)], socket_timeout=0.1)
master = sentinel.master_for('mymaster', socket_timeout=0.1)
slave = sentinel.slave_for('mymaster', socket_timeout=0.1)
master.set('key', 'value')
print(slave.get('key'))