Что такое HTTP/2

26 Февраля 2015
Если облака для вас
не просто теория
Широкий спектр услуг
по выделенным северам
и мультиклауд-решениям
Конфигурация VPS и бесплатный тест уже через 2 минуты
Организация вашей IT-инфраструктуры на основе мультиклауд-решения
Новая версия старого-доброго HTTP-протокола была опубликована организацией, которая задает стандарты интернета – IETF (Internet Engineerging Task Force). Это означает, что действующая редакция протокола HTTP/1.1, которая использовалась с 1999 года, скоро будет заменена новой – HTTP/2. Попробуем разобраться, для чего это делается, и что будет означать для пользователей.

Вебсайты в наши дни включают много различных компонент помимо стандартного HTML: например, элементы дизайна (CSS), скрипты, исполняемые на стороне клиента (JavaScript), картинки, видео и Flash-анимацию. Чтобы передавать всю эту информацию браузер создает несколько разных соединений. Это создает повышенную нагрузку как на сервер, так и на браузер. В наше время, когда мы ожидаем мгновенного открытия сайтов, даже небольшая задержка может стоить компаниям денег, в особенности различным интернет-магазинам и онлайн-сервисам, где долгое время загрузки ассоциируется плохими ощущениями пользователя от сервиса.

В Google решили попробовать «переделать» протокол HTTP/1.1 и создали протокол SPDY. Результаты впечатляли – сайты загружались как минимум на 10% быстрее, а в некоторых случаях удавалось добиться ускорения в 40%. Это привело к тому, что группа инженеров Google из этого проекта решила использовать эти результаты в создании того, что теперь называется HTTP/2.

Чем HTTP/2 лучше

Если вкратце, то HTTP/2 действительно радикально ускоряет загрузку сайтов, экономя всем время, а также и снижая нагрузку на сервер и браузер.

Исследователи из HttpWatch изучили вопрос, и обнаружили, что скорость передачи по новому протоколу увеличивается более, чем на 20%, и это было достигнуто на тестовом сервере, который даже не был оптимизирован под новую технологию. В целом ожидается, что скорость загрузки увеличится на примерно 30%.

HTTP/2 улучшает скорость загрузки за счет того, что создает одно постоянное соединение между браузером и сервером. Используются также технология multiplexing - то есть отправка и получение нескольких блоков одновременно, приоритетизация по важности данных (более важные для открытия страницы данные отправляются вперед), сжатие и «выталкивание с сервера» - то есть сервер «предполагает», какое будет следующее действие пользователя, и заранее пересылает необходимые для этого данные.

Пока не установлена начальная дата для использования протокола HTTP/2. Этот протокол уже используется в различном ПО, хотя он еще находится в стадии «чернового варианта». Например, Майкрософт использует HTTP/2 в своем Internet Explorer в составе Windows 10 Technical Preview. Chrome тоже поддерживает HTTP/2, хотя там он отключен по умолчанию, но его можно включить. В Mozilla он доступен начиная с Firefox Beta 36.

Веб-сервера тоже поддерживают HTTP/2 – в частности IIS в Windows 10 Technical Preview, и ожидается, что его поддержка скоро появится в Apache и Nginx.

По материалам Engadget
Получить консультацию специалиста