zstd_buffers

Устанавливает количество и размер буферов, используемых фильтром сжатия Zstandard в NGINX.

Синтаксисzstd_buffers number size;
По умолчаниюnone
Контекстhttp, server, location
Аргументы2

Описание

Директива zstd_buffers в модуле NGINX Zstandard задаёт конфигурацию буферов, необходимую для обработки данных в процессе сжатия Zstandard. Она принимает два аргумента: первый — количество выделяемых буферов, второй — размер каждого буфера. Эта настройка по сути определяет, сколько памяти будет зарезервировано для сжатия данных ответа до их отправки клиенту. Правильный выбор размера и количества буферов может существенно повлиять на производительность в условиях высокой нагрузки, поскольку обеспечивает плавную обработку данных и поток через конвейер сжатия.

При установке zstd_buffers пользователям необходимо учитывать ожидаемый размер сжимаемых ответов и доступные ресурсы памяти. Если значение слишком мало, буферы могут стать узким местом, что приведёт к увеличению времени ответа и возможной нехватке памяти при обработке больших ответов. Напротив, чрезмерно большой размер буфера может привести к избыточному использованию памяти без существенного прироста производительности. Этот баланс — ключевой аспект настройки NGINX для оптимальной производительности при использовании сжатия Zstandard, особенно при изменяющейся нагрузке.

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

http {
    zstd_buffers 16 4k;  
}
server {
    location / {
        zstd on;
        zstd_buffers 8 8k;
    }
}

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

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

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