nchan_redis_upstream_stats_disconnected_timeout
Устанавливает таймаут (в секундах) для отключенного upstream-сервера Nchan Redis.
Описание
Директива nchan_redis_upstream_stats_disconnected_timeout в модуле Nchan для NGINX используется для задания длительности (в секундах), в течение которой отключенный upstream-сервер Redis будет удерживаться в пуле подключений. Это особенно полезно в ситуациях, когда upstream-серверы Redis могут временно становиться недоступными из-за сетевых проблем, обслуживания или других временных неполадок. Задавая таймаут, администраторы могут управлять тем, как долго экземпляр сервера будет оставаться в кэше пула подключений несмотря на отключение, что влияет на поведение Nchan при переключении на резервный сервер и переподключении при использовании Redis для pub/sub обмена сообщениями.
Параметр этой директивы — число, обозначающее количество секунд. Если указанное количество секунд истечет, а Redis-сервер все еще будет отключен, Nchan удалит этот сервер из пула подключений и прекратит попытки соединения с ним до тех пор, пока явно не будет задано новое соединение или пока его не заменит другой сервер. Эта функция помогает поддерживать стабильную работу и отзывчивость системы обмена сообщениями, предотвращая продолжительные попытки переподключения к неотзывчивым серверам. Она особенно важна в конфигурациях с высокой доступностью, где задержки в производительности могут повлиять на подписки клиентов и доставку сообщений.
Пример конфига
upstream redis_backend {
server redis1.example.com:6379;
server redis2.example.com:6379;
nchan_redis_upstream_stats_disconnected_timeout 30;
}Убедитесь, что значение timeout разумно, чтобы избежать ненужного отключения активных серверов Redis во время кратковременных сбоев.
Установка слишком низкого значения timeout может привести к частым попыткам переподключения, что может увеличить нагрузку на сервер Redis.