nchan_redis_reconnect_delay_max
Устанавливает максимальную задержку между попытками повторного подключения к Redis при использовании Nchan.
Описание
Директива nchan_redis_reconnect_delay_max задаёт максимальную задержку, используемую при попытках повторного подключения к серверу Redis после сбоя соединения. Эта директива в первую очередь актуальна в средах, где Nchan, как pub/sub‑сервер, интегрирован с Redis для буферизации и доставки сообщений. Когда Redis становится недоступен, Nchan использует стратегию экспоненциального увеличения интервала между попытками переподключения. Время между попытками увеличивается до предела, заданного этой директивой, чтобы не перегружать сервис Redis при временной недоступности.
На практике, если соединение с Redis прерывается, модуль Nchan сначала будет ждать короткую задержку, но затем экспоненциально увеличивать эту задержку до достижения максимума, указанного в nchan_redis_reconnect_delay_max. Например, если максимальная задержка установлена в 60 секунд, таймер переподключения не будет превышать эту длительность между попытками. Это обеспечивает корректное поведение системы при сбоях, позволяя выполняться другим процессам и избегая немедленных и постоянных попыток переподключения, которые могли бы привести к отказу в обслуживании.
Директива задаётся одним аргументом, который должен быть интервалом времени. Она применима в контексте upstream, где может быть определён сервер Redis. Правильная конфигурация обеспечит эффективное управление взаимодействием Nchan с Redis, адаптируясь к изменениям доступности без ручного вмешательства.
Пример конфига
upstream redis_backend {
nchan_redis_reconnect_delay_max 30s;
server redis-server:6379;
}Убедитесь, что значение времени указано в распознаваемом формате (например, 30s, 1m).
Неправильное размещение этой директивы может привести к её игнорированию; убедитесь, что она находится в контексте upstream.
Установка чрезмерно высокого значения может задержать восстановление после сбоев Redis. Учтите компромисс между частотой подключений и нагрузкой.