Каковы последствия на стороне сервера IIS принудительной отправки невостребованного сервера

HttpResponse.PushPromise выполняет HTTP / 2 Server Push..

Обычный рекомендуемый вариант использования - во время обслуживания html-страницы отправка дополнительных ресурсов, таких как css, js или изображения.

Таким образом, это отлично работает с начальным запросом, возвращается html и все другие ресурсы по одному запросу / соединению.

Теперь происходит вторичная навигация. Браузер запрашивает html, и сервер возвращает его, а также подталкивает другие ресурсы. но в браузере уже кэшированы другие ресурсы. Эти ресурсы теперь переходят в состояние «Невостребованные отправлены».

Так что же происходит на стороне сервера, когда происходит невостребованный push?


person Simon    schedule 14.11.2016    source источник


Ответы (1)


Я не могу точно сказать, что происходит в реализации IIS.

Но общая логика заключается в том, что браузеры видят отправляемый поток (кадр Push Promise) и понимают, что он им не интересен. Поэтому он отправляет на сервер кадр сброса для потока. Сервер получает кадр сброса для потока, который переводит состояние потока HTTP / 2 для этого продвигаемого потока в состояние сброса. Если все еще что-то записывает в отправленный поток на сервере, он завершится ошибкой из-за этого, и отправка завершится.

person Matthias247    schedule 14.11.2016