Я пытаюсь настроить nginx для обслуживания небольшого, полностью статического сайта.
Без включенного HTTP / 2 я получаю этот график в инструментах разработчика Chrome:
Здесь мы видим очень хороший TTFB и хорошую пропускную способность для файлов. Однако, начиная с седьмого запроса, мы получаем некоторую очередь со стороны браузера из-за его ограничения в 6 подключений. Вот почему я хотел переключиться на HTTP / 2 (среди других преимуществ).
Теперь, когда HTTP / 2 включен (добавлен параметр http
в listen
):
Первая пара запросов хороша, но потом все быстро ухудшается (задержка и пропускная способность / скорость загрузки).
Все остальные параметры остались прежними, и я постоянно наблюдаю такое поведение.
Мой nginx конфигурации, если это поможет: https://gist.github.com/alfredxing/12757c0f7f91c91a415b651fd9510ec4
Есть идеи, почему это может происходить?
Сервер HTTP/2 может вести себя иначе, чем обычный сервер HTTP/1.1. Во-первых, HTTP/2 сервер может видеть все запросы, исходящие от одного и того же клиента, и расставлять приоритеты для некоторых из них по-разному.