nchan_redis_cluster_recovery_delay
Задает задержку восстановления подписчиков Nchan в кластере Redis при обрыве соединения.
Описание
Директива nchan_redis_cluster_recovery_delay задаёт задержку времени перед тем, как подключение подписчика попытается восстановить свою подписку после обрыва соединения в настройке кластера Redis. Эта задержка может помочь управлять переподключениями подписчиков в условиях высокой нагрузки или нестабильной сети, предоставляя буферный период, в течение которого можно определить, произошёл ли временный сетевой сбой или узел Redis недоступен.
Директива принимает один аргумент, который указывает задержку восстановления в секундах. Она должна быть настроена с учётом стабильности сети и требований к производительности эксплуатации. Установка слишком низкого значения может привести к чрезмерной активности попыток подключения и увеличению нагрузки на сервер, тогда как слишком высокое значение может привести к задержкам доставки сообщений подписчикам.
Эта директива особенно полезна в сценариях, где критически важно поддерживать устойчивую систему pub/sub и обеспечивает, что подписчики не будут засыпать сервер запросами на переподключение при кратковременных сбоях. Она действует как форма управления перегрузкой, балансируя отзывчивость и стабильность системы.
Пример конфига
upstream nchan {
nchan_redis_cluster_recovery_delay 5;
server redis1:6379;
server redis2:6379;
}Убедитесь, что задержка восстановления не конфликтует с требованиями к задержке вашего приложения.
Остерегайтесь устанавливать задержку восстановления слишком низкой или слишком высокой — это может либо перегрузить сервер попытками подключений, либо привести к неприемлемой задержке.
Эта директива имеет значение только при использовании кластерных настроек Redis; в других конфигурациях она не действует.