in_buf_size

指令 `in_buf_size` 指定 NGINX SRT 模块的输入缓冲区大小,影响从 SRT 流接收数据。

语法in_buf_size size;
默认值8192;
上下文
参数1

说明

指令 in_buf_size 定义了在 NGINX 的 SRT 模块中通过 SRT (Secure Reliable Transport) 连接接收数据时使用的输入缓冲区大小。此设置对于在数据流传输期间优化性能和有效管理内存至关重要。通过配置 in_buf_size,您可以控制从传入的 SRT 流一次性读取的数据量,这会根据应用负载影响延迟和吞吐量。

将输入缓冲区设置得较大可以降低 NGINX 工作进程与 SRT 库之间的上下文切换频率,这对高吞吐量场景有利。相反,如果设置过大,可能导致内存使用增加;在低传输速率下,如果缓冲区很少被清空,还可能带来延迟问题。在确定该指令的合适值时,应考虑整体网络环境和所传输数据的特性。

由于该指令作为 SRT 模块核心配置的一部分实现,可在配置文件的 srtserver 块中使用,便于针对具体需求进行灵活配置。

配置示例

srt {
    server {
        listen 4321;
        in_buf_size 16384;
        proxy_pass tcp://127.0.0.1:5678;
    }
}

如果传入的数据超过缓冲区大小,将 in_buf_size 设置得过小可能会导致丢包。

在增大 in_buf_size 时,请记得考虑服务器的整体内存限制。

调整此值可能需要重新校准其他相关的 SRT 缓冲区设置以获得最佳性能。

← 返回所有指令