HTTP/2

HTTP/2 (сокр. HyperText Transfer Protocol/2) — вторая крупная версия сетевого протокола HTTP, используемая для доступа к ресурсам всемирной сети Интернет. Протокол HTTP/2 может заметно ускорять загрузку веб-сайтов за счет следующих особенностей:

  • уменьшение размера технических заголовков: в отличии от HTTP версий 1.0 и 1.1, новый протокол выполняет сжатие технических заголовков что уменьшаем объём передаваемых данных;
  • мультиплексирование соединений: HTTP/2 позволяет отправлять несколько запросов через одно TCP-соединение с сервером. Такой подход уменьшает накладные расходы на открытие новых TCP-соединений и позволяет практически не ограничивать количество одновременно передаваемых ресурсов;
  • приоритизация потоков: веб браузер может передавать серверу приоритеты, указывающие какого вида ресурсы для него более важны, чем другие;
  • инициация отправки данных со стороны сервера: в протоколе HTTP/2 сервер может привентивно отправлять клиенту данные, которые тот еще не запрашивал, используя, к примеру, данные о том, какую следующую страницу чаще всего открывают пользователи.

Протокол HTTP/2 поддерживается следующими веб-серверами:

  • Nginx c версии 1.9.5;
  • Apache2.4.17 поддерживает HTTP/2 с помощью модуля mod_http2 module;
  • Lighttpd с версии 1.4.59;
  • IIS поддерживает HTTP/2 начиная с Windows 10 и Windows Server 2016.

10.1 Протокол HTTP/2 и его поддержка