kmp_rtmp_out_timeout

指令 `kmp_rtmp_out_timeout` 指定 Kaltura Media Framework 中外发 RTMP 连接的超时时长。

语法kmp_rtmp_out_timeout timeout;
默认值none
上下文stream, stream server
参数1

说明

在 NGINX 的 stream 或 stream server 块中使用 kmp_rtmp_out_timeout 指令来定义在没有数据传输时,外发 RTMP (Real-Time Messaging Protocol) 连接可以保持打开的最长时长。通过设置此超时,可以确保不活动的连接不会无限期保持,从而有助于更有效地管理资源,并防止因挂起连接导致的潜在服务中断。

该指令接受一个以秒为单位的参数,用于指定超时时长。例如,设置 kmp_rtmp_out_timeout 30; 意味着如果在 30 秒内外发 RTMP 连接没有数据传输,该连接将被自动关闭。此行为在直播场景中特别有用——在这些场景中,维持适当数量的连接对于性能至关重要,意外或恶意的占用会降低整体服务可用性。

当超时到期时,NGINX 将静默终止该连接,从而为其他请求或客户端释放资源。需要注意的是,此超时适用于模块处理的所有外发 RTMP 连接,确保媒体流设置中对空闲连接的处理一致。因此,在设置该值时应仔细权衡,平衡为预期活动保持连接与在不活动时释放资源之间的关系。

配置示例

stream {
    server {
        listen 1935;
        kmp_rtmp_out_timeout 60;
    }
}

将超时时间设置得过低可能导致合法连接被断开,尤其是对于持续时间较长的流。

如果未设置该指令,出站连接可能会无限期挂起,从而导致资源耗尽。

← 返回所有指令