Как сказать программе о новом шарде redis?

Доброго времени суток, есть высоконагруженная программа, использующая redis как способ доставки сообщений.
Никаких высокоуровневых утилит, типа sentinel, мы не используем. Все вручную. Для каждого шарда создается свой объект в программе, в каждом узле программы хранятся в map’ке записи о текущих подключенных шардах.
Список доступных шардов программа получает при запуске, из переменных окружения.

Вопрос следующий: если отпал один из шардов, как оповестить программу о доступности нового шарда, без ее перезапуска? Вообще на ум приходит перезагрузка конфига через SIGHUP, но подумала, что может быть способ получше.

используем библиотеку redigo

UPD
Так как программа разворачивается на Kubernetes, может есть какие-то плюшки с уведомлением о доступности нового кластера? Или в configmap можно как-то использовать реактивность?
  • Вопрос задан
  • 109 просмотров
Решения вопроса 1
leahch
@leahch Куратор тега Linux
Я мастер на все руки, я козлик Элек Мэк :-)
Почему бы не воспользоваться consul.io? Этот инструмент как раз для этого и предназначен.
В принципе, подойдет любое распределенное хранилище, начиная от zookeper и заканчивая etcd.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы