Что такое HTTP2

Что такое HTTP2 и преимущества перед HTTP1

Единственное руководство, которое Вам нужно, чтобы узнать, что такое HTTP2, и сделать свой сайт на WordPress быстрее.

HTTP2 предлагает значительные преимущества в повышении производительности для любого веб-сайта. Давайте разберемся с этим вопросом вместе.

Читайте также:

Что такое HTTP2 и зачем он нужен

HTTP2 – это последняя версия HTTP (HyperText Transfer Protocol), которая была оптимизирована таким образом, чтобы Ваш сайт загружался намного быстрее, без каких-либо дополнительных усилий с Вашей стороны. Как только Вы настроите HTTP2, Вам больше не понадобятся такие оптимизации, как минимизация, комбинирование и другие хаки, которые мы раньше выполняли – они встроены прямо в сам протокол.

Что такое HTTP?

Прежде чем мы перейдем к HTTP2, давайте немного оглянемся на HTTP и почему была необходима новая версия HTTP.

Протокол передачи гипертекста (он же HTTP) – это просто способ связи Вашего браузера с веб-сервером посещаемого Вами сайта.

Существует много способов взаимодействия двух (или более) машин через Интернет. HTTP используется для просмотра веб-сайтов. Не вдаваясь в подробности, HTTP-протокол используется браузером посетителя для запроса всего содержимого веб-сайта.

Почему HTTP1 устарел

Есть очень хорошая аналогия, которая использовалась для описания HTTP1. Допустим, Вы заказали 3 коктейля и 4 закуски, а официант приносит пункты Вашего заказа по 1, а не все сразу. Конечно, это не очень эффективно, и здесь начинаются проблемы с HTTP.

Сеть выросла быстрее, чем возможности HTTP

HTTP существует уже очень давно. Когда он был продуман и создан, Интернет был совсем другим местом. Пропускная способность измерялась в битах, а не в десятках мегабит. Следовательно, чтобы быть пригодными для использования, веб-сайты были сделаны в основном из текста и гиперссылок. Изображения были немногочисленны.

HTTP1 стал слишком медленным

Веб-сайты, темы и все виды функциональности сделали сайты тяжелее с точки зрения ресурсов. Ваш средний веб-сайт содержит сотни различных файлов и изображений. Количество перемещений между браузером и сервером сайта постоянно растет.

Само по себе это не является проблемой, однако создание соединения между браузером и сервером является технически дорогой операцией и требует времени. По мере роста количества различных ресурсов, требуемых на сайте, увеличивается и время, которое требуется для загрузки сайта.

Как сделать сайт быстрее

  • Создайте легкий сайт, который использует минимальное количество файлов JS, CSS и изображений.
  • Сократите количество запросов для различных файлов CSS и файлов JS, объединив как можно больше этих файлов (уменьшив количество запросов за счет объединения файлов).
  • Сокращение количества запросов к изображениям путем создания одного изображения, которое объединяет их все в одно, и использования CSS-спрайтов.
  • Удалите все дополнительные плагины (чтобы уменьшить количество изображений, файлов CSS и файлов JS, которые они добавляют на сайт).
  • Обязательно используйте сжатие данных.
  • Используйте кеширование браузера в WordPress с помощью плагина, так что если пользователь снова заходит на Ваш сайт в течение короткого периода времени, он не сможет загрузить те же файлы снова.
  • Оптимизируйте веб-сайт, сводя к минимуму запросы http.

Что такое HTTP2 и почему он лучше

 HTTP2 был написан с целью исправить описанные выше проблемы. Одна из основных целей HTTP2 – уменьшить задержку, чтобы улучшить скорость загрузки страницы в веб-браузерах.

Улучшения HTTP2:

  • является двоичным, а не текстовым;
  • полностью мультиплексирован;
  • поэтому можно использовать одно соединение для параллелизма;
  • использует сжатие заголовка, чтобы уменьшить накладные расходы;
  • позволяет серверам активно «проталкивать» ответы в клиентские кеши.

Чего ждать? Не волнуйтесь – давайте попробуем объяснить каждый пункт с точки зрения непрофессионала.

Преимущества HTTP2

Двоичный вместо текстового

Это то, что делает передачу и анализ данных намного более эффективными. Передача двоичных данных также гораздо менее подвержена ошибкам.

Полностью мультиплексированный

Опять же, проще говоря, с HTTP проблема состояла в том, что каждое соединение было склонно к блокированию соединений после него. Представьте себя в очереди на стадионе на свой любимый спортивный матч. Вы хотите попасть внутрь, но вместо нескольких точек входа у Вас только 1 турникет. Вы можете себе представить, что все смогут попасть на стадион, но только очень и очень медленно. Мультиплексирование позволяет передавать несколько файлов и запросов одновременно. В примере с турникетами – вместо того, чтобы входил один человек за раз, появляется 10 ворот с 10 турникетами, теперь 10 человек входит вместе.

Используйте одно соединение для параллелизма

Как мы упоминали ранее, когда соединение стоит дорого, если Вы продолжаете создавать и закрывать его для каждого нужного Вам ресурса, Вы создадите серьезную проблему с накладными расходами. Мультиплексирование позволяет многократно использовать одно и то же соединение. Представьте себе соединение как канал, по которому текут данные, пока у Вас не останется больше данных. Кроме того, обратите внимание, что для любого веб-сайта у Вас обычно есть браузер, который взаимодействует с несколькими веб-серверами для различных сторонних сценариев и ресурсов, имея по одному соединению для каждого из них. Свести все потоки в один – это более эффективно.

Сжать заголовки

Сжатие заголовка также является другим эффективным способом устранения некоторых издержек, связанных с необходимостью извлечения нескольких разных ресурсов с одного или нескольких веб-серверов. Еще раз, обычно вместо того, чтобы выполнять многократные поездки туда и обратно, одной поездки зачастую вполне достаточно.

Позволяет серверам активно загружать ресурсы

Таким образом сервер вместо того, чтобы ждать, пока клиентский браузер запросит различные ресурсы, как в нашем первом примере, он будет активно отправлять им ресурсы, которые им, вероятно, понадобятся. Это называется HTTP2 Server push.

Если бы нам пришлось вернуться к аналогии с официантом, который приносил по одному напитку за раз, самое большое преимущество заключается в том, что теперь официант использует большой поднос, чтобы собрать заказ полностью и принести сразу всё вместе. Отлично, поэтому HTTP2 устраняет многие недостатки HTTP.

Какие браузеры поддерживают HTTP2

На момент написания статьи большинство популярных клиентских браузеров полностью поддерживали HTTP2. FireFox, Chrome и браузеры на базе Blink (то есть Opera и Yandex) поддерживают HTTP2. Microsoft Edge также поддерживает HTTP2, хотя и Apple объявила, что будет поддерживать его.

Если браузер не поддерживает HTTP2, а веб-сайт поддерживает HTTP2, произойдет постепенный откат к HTTP1, поэтому для любого посетителя проблем не возникнет, если Вы включите HTTP/2. Для Вас могут быть только выгоды.

Какие серверы поддерживают HTTP2

Apache, Nginx и большинство популярных реализаций серверов уже поддерживают HTTP2. Однако возможность использования HTTP2 с WordPress на самом деле зависит от того, активировала ли это Ваша хостинговая компания. Так что Вам придется подтвердить фактическую доступность HTTP2 у Вашей хостинговой компании.

Проще говоря, будет ли Ваш сайт в настоящее время полностью поддерживать HTTP2, зависит от Вашей хостинговой компании или сервера, на котором Вы размещаете свой сайт WordPress.

Добавить комментарий


Мы в социальных сетях

Подписивайтесь и следите за нашими акциями и новостями