unbrotli_buffers
Директива `unbrotli_buffers` задаёт число и размер буферов, используемых для декомпрессии Brotli-encoded ответов.
Описание
Директива unbrotli_buffers играет ключевую роль в том, как NGINX обрабатывает Brotli-encoded ответы для клиентов, которые не поддерживают это кодирование. Эта директива принимает два параметра: первый задаёт количество буферов, а второй определяет размер каждого буфера. Эти буферы необходимы для временного хранения данных Brotli во время декомпрессии, прежде чем они будут отправлены клиентам.
Поведение по умолчанию и размер этих буферов зависят от размера страницы памяти системы, но обычно устанавливаются в разумные значения, например 32 4k, что означает 32 буфера по 4 килобайта каждый. Такая конфигурация часто помогает оптимизировать использование памяти, сохраняя баланс с потребностями производительности при декомпрессии больших потоков данных. Если размеры ответов преимущественно большие, возможно, имеет смысл увеличить число или размер буферов для улучшения производительности ценой увеличения потребления памяти.
При настройке unbrotli_buffers важно учитывать возможности вашего сервера и ожидаемые размеры ответов, а также общие ограничения по памяти в вашей среде. Декомпрессия больших полезных нагрузок при недостаточных размерах буферов может привести к неоптимальной производительности или даже к деградации сервиса из-за чрезмерных выделений памяти или увеличения использования CPU.
Пример конфига
location /storage/ {
unbrotli on;
unbrotli_buffers 32 4k;
}Убедитесь, что количество буферов и их размеры не превышают доступные лимиты памяти, особенно в условиях высокой нагрузки.
Имейте в виду, что увеличение размера буфера может привести к повышенному потреблению памяти, что потенциально повлияет на производительность сервера в условиях ограниченных ресурсов.