srt_proxy_connect_timeout

srt_proxy_connect_timeout 指令设置在代理 SRT 流时等待建立连接的最长时间。

语法srt_proxy_connect_timeout timeout_in_seconds;
默认值60
上下文stream, stream server
参数1

说明

srt_proxy_connect_timeout 指令指定在 SRT(安全可靠传输)代理上下文中与上游服务器建立连接的超时时间。当正在代理 SRT 流时,若在该指定的超时期限内未能与目标建立连接,NGINX 将停止尝试连接并记录错误。这对于将停机时间降到最低并确保 NGINX 不会在尝试连接无法到达的服务时无限期挂起至关重要。该指令的参数是一个表示超时(以秒为单位)的整数。

该指令主要适用于后端 SRT 服务器可能响应缓慢或暂时不可用的场景。将其设置为合理的值有助于防止 NGINX 端资源耗尽,从而允许及时进行故障处理并可能采用备用路由逻辑。在设置该值时应慎重考虑,因为过短的超时可能在正常运行条件下导致频繁的连接错误,而过长的超时则可能在发生故障时延迟错误处理。

在使用此指令的良好实践中,应确保监控实际连接行为并相应调整超时值,因为各种网络状况和服务器性能会显著影响连接建立时间。

配置示例

stream {
    server {
        listen 4321;
        srt_proxy_pass srt://127.0.0.1:5678;
        srt_proxy_connect_timeout 30;
    }
}

将超时时间设置得太短可能会导致频繁的连接尝试失败,即使服务器可达但响应较慢。

如果未设置,默认超时时间可能会导致意外的延迟,尤其是在上游服务器建立连接较慢时。

← 返回所有指令