ts_kmp_max_free_buffers

The `ts_kmp_max_free_buffers` 指令控制 Kaltura Media Protocol (KMP) 流媒体服务器可用的最大空闲缓冲区数量。

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

说明

ts_kmp_max_free_buffers 指令是优化 Kaltura’s Media Framework 中缓冲区管理的重要配置选项。该指令指定应维持的最大空闲缓冲区数量,从而在处理流媒体时实现高效的资源管理。配置后,它通过将可用缓冲区数量限制在预定义阈值内,有助于缓解潜在的内存耗尽问题。该功能在高负载场景中尤为有用,在此类场景中可能会出现大量流连接,从而使 NGINX 能够根据需要高效分配和释放缓冲区资源。

该指令适用于 streamstream server 等上下文,这些上下文专门用于处理 TCP 流。为 ts_kmp_max_free_buffers 设置值时,需要提供一个表示最大允许空闲缓冲区数量的正整数。如果在运行过程中空闲缓冲区的数量超过此限制,NGINX 将根据其内部内存管理例程开始回收缓冲区,以确保内存消耗保持在合理范围内。

调整此参数时应谨慎,因为分配过少的缓冲区可能在高峰使用时导致性能下降,而分配过多则可能浪费内存资源。建议密切监视缓冲区利用情况,并根据针对特定服务器和应用工作负载的观察性能指标进行调整。

配置示例

stream {
    server {
        ts_kmp_max_free_buffers 100;
    }
}

在高负载下,将此值设置得过低可能会导致流媒体性能问题。

在将配置更改应用到生产环境之前,务必在预发布环境中测试其影响。

← 返回所有指令