nchan_redis_upstream_stats_disconnected_timeout
以秒为单位设置断开连接的 Nchan Redis 上游服务器的超时时间。
Scalable, flexible pub/sub server for the modern web
·
upstream
语法nchan_redis_upstream_stats_disconnected_timeout seconds;
默认值60
上下文upstream
参数1
说明
nchan_redis_upstream_stats_disconnected_timeout 指令在 NGINX 的 Nchan 模块中用于设置断开连接的上游 Redis 服务器在连接池中保留的时长(以秒为单位)。这在上游 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 服务器的负载。