push_min_message_buffer_length

Устанавливает минимальную длину буфера для сообщений в реализации pub/sub Nchan.

Синтаксисpush_min_message_buffer_length number;
По умолчаниюnone
Контекстserver, location, if in location
Аргументы1

Описание

Директива push_min_message_buffer_length определяет минимальный размер буфера, в котором хранятся публикуемые сообщения в модуле Nchan для NGINX. Эта директива необходима для гарантии того, что сообщения адекватно буферизуются перед отправкой подписчикам, что может быть критично в сценариях, требующих высокой пропускной способности и низкой задержки.

При настройке push_min_message_buffer_length указанное значение представляет собой количество байтов, зарезервированных для буферов сообщений. Если публикуемое сообщение превышает эту длину, буфер должен быть расширен, что потенциально может повлиять на производительность и использование памяти. Поэтому важно установить подходящий размер буфера, который уравновешивает потребление ресурсов и требования приложения. Эффективное управление размером буферов позволяет повысить надежность доставки сообщений при различных условиях сети и нагрузках от подписчиков.

Эта директива применяется в контекстах server и location, а также внутри if-блоков в блоке location, что обеспечивает гибкую конфигурацию, ориентированную на разные маршруты в вашем приложении. Кроме того, настройка этой директивы может помочь оптимизировать производительность Nchan как в одиночных, так и в кластерных развертываниях, обеспечивая стабильную работу по мере роста нагрузки.

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

location /pubsub {
    push_min_message_buffer_length 1024;
    # additional configurations
}

Установка слишком малого размера буфера может привести к потере сообщений при высокой нагрузке.

Превышение доступной памяти может привести к нестабильной работе приложения, если размеры буферов не управляются должным образом.

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