gzip_hash

Директива `gzip_hash` задаёт алгоритм хеширования, используемый для настроек gzip-сжатия в NGINX.

Синтаксисgzip_hash { algorithm | md5 | sha1 | crc32 };
По умолчаниюmd5
Контекстhttp, server, location
Аргументы1

Описание

Директива gzip_hash является частью модуля HTTP Core NGINX, который управляет тем, как NGINX обрабатывает gzip-сжатие HTTP-ответов. Задавая метод хеширования, она оптимизирует хранение и извлечение параметров gzip для кэшированного содержимого, что обеспечивает лучшую производительность при высокой нагрузке.

Эту директиву можно настроить с использованием различных алгоритмов хеширования, таких как md5, sha1 или crc32, что позволяет администратору адаптировать отзывчивость и использование ресурсов при gzip-сжатии в зависимости от возможностей сервера и ожидаемого типа содержимого. Выбор метода хеширования может повлиять как на производительность, так и на размер сохраняемых флагов gzip, а следовательно — на общий объём потребляемой памяти. NGINX анализирует контекст сжатия и генерирует значения хеша на основе настроенных параметров, чтобы гарантировать уникальные идентификаторы для сжатого содержимого в соответствии с выбранной хеш-функцией.

Директиву gzip_hash можно разместить в контекстах http, server или location, что даёт гибкость в конфигурации. Важно учитывать, что выбор более сложной хеш-функции может повысить уникальность записей, но при этом потреблять дополнительные CPU-циклы, поэтому рекомендуется учитывать конкретные потребности вашего приложения и ожидаемую нагрузку при её настройке.

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

http {
    gzip on;
    gzip_hash sha1;
}

Убедитесь, что выбранный алгоритм хеширования поддерживается вашей версией NGINX.

Использование сложного алгоритма хеширования может увеличить нагрузку на CPU при минимальной пользе для эффективности сжатия.

Смена алгоритма хеширования влияет на то, как обрабатываются ранее кэшированные gzip-ответы, что может потребовать их регенерации.

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