types_hash_max_size

Устанавливает максимальный размер таблицы хешей для обработки MIME-типов в NGINX. — NGINX HTTP Core

types_hash_max_size
httpserverlocation
Синтаксисtypes_hash_max_size size;
По умолчанию512
Контекстhttp, server, location
МодульNGINX HTTP Core
Аргументы1

Описание

`types_hash_max_size` директива управляет максимальным размером таблицы хешей, которую NGINX использует для хранения MIME-типов. Она определяет максимально возможное число записей, которые может содержать таблица хешей, что обеспечивает эффективное соответствие расширений файлов их MIME-типам. При установке значения этой директивы NGINX выделяет достаточно памяти для заданного размера, повышая способность обрабатывать широкий набор типов файлов без ухудшения производительности. Аргумент, передаваемый в `types_hash_max_size`, обычно является положительным целым числом. Если размер хеша превышен, NGINX перейдёт к использованию менее эффективного способа хранения. Правильная настройка этого значения с учётом ожидаемого числа MIME-типов может существенно улучшить производительность сервера при обработке запросов к файлам с определёнными типами содержимого. Учтите, что эта директива актуальна в контекстах, таких как `http`, `server` и `location`. Она важна для конфигураций, обслуживающих разнообразные типы файлов, обеспечивая оптимальную производительность в процессе сопоставления. Следует избегать чрезмерно большого значения, так как это может привести к ненужному увеличению использования памяти. Напротив, слишком низкое значение может вызвать узкие места в производительности. Поэтому рекомендуется мониторить приложение и корректировать эту директиву на основе наблюдаемых потребностей.

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

http {
    types_hash_max_size 2048;
}

Установка слишком низкого значения может привести к снижению производительности из-за коллизий хэшей.

Установка слишком высокого значения неоправданно увеличивает потребление памяти.