in_buf_size

Директива `in_buf_size` задаёт размер входного буфера для модуля NGINX SRT, влияя на приём данных из SRT-потоков.

Синтаксисin_buf_size size;
По умолчанию8192;
Контекст
Аргументы1

Описание

Директива in_buf_size определяет размер входного буфера, используемого при приёме данных по соединениям SRT (Secure Reliable Transport) в модуле NGINX SRT. Этот параметр имеет ключевое значение для оптимизации производительности и эффективного управления памятью при потоковой передаче данных. Настраивая in_buf_size, вы можете контролировать, сколько данных может быть прочитано за один раз из входящих SRT-потоков, что может влиять как на задержку, так и на пропускную способность в зависимости от нагрузки приложения.

Увеличение размера входного буфера может снизить частоту переключений контекста между рабочими процессами NGINX и библиотекой SRT, что выгодно в сценариях с высокой пропускной способностью. Напротив, чрезмерно большой буфер может привести к увеличению использования памяти и проблемам с задержкой, если буфер редко опорожняется из-за низкой скорости передачи данных. При выборе подходящего значения этой директивы важно учитывать общую сетевую среду и характер передаваемых данных.

Поскольку эта директива реализована в составе основной конфигурации модуля SRT, она применима внутри блоков srt и server в ваших файлах конфигурации, что обеспечивает гибкость для конкретных требований.

Пример конфига

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

Установка in_buf_size слишком малого значения может привести к потере пакетов, если входящие данные превышают размер буфера.

При увеличении in_buf_size не забудьте учитывать общие ограничения по памяти вашего сервера.

Корректировка этого значения может потребовать перекалибровки других связанных настроек буферов SRT для оптимальной производительности.

← Ко всем директивам