http2_max_concurrent_pushes
Ограничивает максимальное количество одновременных HTTP/2 server push-ответов, которые может выполнять NGINX.
Описание
http2_max_concurrent_pushes директива настраивает максимальное количество одновременных серверных push-ответов, которые могут быть инициированы сервером NGINX при использовании протокола HTTP/2. Эта директива применима как в контекстах http, так и server, позволяя администраторам сервера тонко настраивать интенсивность отправки контента клиентам. Когда директива установлена, если число push-ответов превышает настроенное значение, дополнительные запросы на отправляемый контент будут помещены в очередь до тех пор, пока количество активных push-ответов не опустится ниже этого порога.
Аргумент этой директивы — положительное целое число, задающее максимальное количество одновременных push-ответов. Это помогает предотвратить перегрузку сервера и управлять использованием ресурсов, особенно при высокой нагрузке, когда многочисленные запросы на push могут превысить возможности сервера. Настройка этой директивы может быть критичной в сценариях, где серверы отправляют ресурсы проактивно, улучшая время загрузки при навигации пользователя по ожидаемым ресурсам.
По умолчанию, если значение не задано, оно установлено в none, что означает отсутствие ограничения со стороны этой директивы и позволяет столько одновременных push-ответов, сколько способен обработать сервер или клиент. Администраторы серверов рекомендуется выбирать значения с учётом возможностей их инфраструктуры и конкретных потребностей приложения, чтобы добиться оптимальной производительности без чрезмерной нагрузки или задержек.
Пример конфига
http {
http2_max_concurrent_pushes 10;
}
server {
listen 443 ssl http2;
http2_max_concurrent_pushes 15;
}Установка этого значения слишком низким может ухудшить производительность из-за чрезмерного накопления очереди push requests.
Неправильная настройка этой директивы не вызывает ошибок, но может привести к неоптимальной производительности, что требует тщательного мониторинга.