Повысьте скорость своего сайта с помощью HTTP / 2

В современном Интернете важна каждая миллисекунда производительности вашего сайта. Это зависит от структуры вашего сайта, но от тестов, выполненных CloudFlare и LoadImpact, ваш сайт может выиграть от 20% до 200% + увеличение скорости от перехода на новый протокол HTTP / 2. Этот тест иллюстрирует разницу в скорости при загрузке страницы с несколькими запросами.


HTTP / 2 – это двоичный протокол, который использует только одно соединение на сервер. Он обеспечивает более высокую производительность TLS, поддерживает большую безопасность и упрощает ваши веб-приложения. Это отличное решение для большинства сайтов и CMS, таких как WordPress. Если вы хотите еще больше ускорить свой сайт, мы получили еще 33 подсказки здесь.

Ты будешь не выгодно из HTTP / 2, если ваше веб-приложение в основном обслуживает большие загружаемые файлы или медиапотоки. В этом случае вам, вероятно, не нужен TLS, а мультиплексирование не дает никаких преимуществ, когда используется только один поток..

Введение в HTTP / 2

HTTP / 2 – это серьезный пересмотр традиционной структуры веб-передачи данных HTTP / 1.1, которая пятнадцать лет верно служила Всемирной паутине в качестве основного метода загрузки веб-ресурсов через TCP-соединения..

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

Для чего используется HTTP / 2 и зачем его использовать?

Разработанная Рабочей группой HTTP Инженерной рабочей группы по Интернету, HTTP / 2 основана на более раннем протоколе SPDY, разработанном Google и использовавшемся для решения обостряющихся проблем стоимости в рамках использования данных их сетевого центра, и состоит из двух спецификаций: а именно Протокол передачи гипертекста v. 2 и формат сжатия заголовка HPACK.

Сжатие заголовка, в частности, значительно уменьшает количество циклов, необходимых для полной загрузки данных; это особенно полезно для мобильных клиентов, для которых обычно вы видите задержку приема-передачи в несколько сотен миллисекунд. Инфраструктура SPDY / 2 была выбрана в качестве основы для новой системы, и после внедрения HTTP / 2 Google разработал планы по прекращению поддержки SPDY в пользу новых и улучшенных протоколов..

В конечном счете, повышение производительности вашего хостинга.

Как это работает

HTTP / 2 использует двоичные протоколы, в отличие от текстовых протоколов HTTP / 1.x, поскольку эти протоколы более компактны и их легче анализировать «по проводам».

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

http2

(источник изображения Nginx)

Это важно, поскольку HTTP / 2 по-прежнему допускает только одно TCP-соединение, отчасти из-за того, что большинство современных веб-страниц используют несколько источников. Наличие нескольких подключений из разных точек происхождения увеличивает использование сетевых ресурсов браузером по сравнению с тем, что является разумным, поэтому вместо этого HTTP / 2 использует серверное нажатие и сжатие заголовков для максимальной передачи данных и эффективности..

Небраузерные приложения, в том числе и пакетно-эффективные, такие как VoIP, также должны иметь возможность использовать соединения HTTP / 2.x, если они уже используют HTTP. Несмотря на это, HTTP / 2 до сих пор был оптимизирован главным образом для использования браузером, так как это составляет основное использование платформы..

Интернет-безопасность с HTTP / 2

До сих пор рабочая группа HTTP не требовала использования методов шифрования, таких как безопасность транспортного уровня (TLS); несмотря на это, они определили профиль TLS, включающий черный список набора шифров, и ни один браузер в настоящее время не поддерживает HTTP / 2 в незашифрованном состоянии. Браузеры, которые в настоящее время поддерживают протоколы HTTP / 2, включают Microsoft Edge, Safari, Firefox и Chrome..

Снимок экрана 2017 7 17 Можно ли использовать таблицы поддержки для HTML5, CSS3 и т. Д.

Эта статистика поддержки за июль 2017 года. Более актуальный статус вы можете проверить источник здесь.

Реализация новых протоколов

По большей части HTTP / 2 может быть реализован без предварительной поддержки HTTP / 1.x. Если вы не реализуете идентификаторы согласования протокола прикладного уровня HTTP (ALPN) HTTP 1.1, то также возможна поддержка шифрования TLS. Однако для HTTP / 2 через TCP вам потребуется обработать обновление с HTTP / 1.1.

Наряду с отсутствием требования шифрования, HTTP / 2 имеет несколько слабых мест. Cookie-файлы не были значительно улучшены по сравнению с HTTP / 1, и, несмотря на их относительно безвредную природу, cookie-файлы все еще технически могут использоваться хакерами для получения доступа к вашим частным системам..

Как и когда переключаться

Начать работу с HTTP / 2 не так уж сложно на стороне клиента, все, что вам нужно сделать, это убедиться, что ваш браузер обновлен, так как большинство крупных клиентов поддерживают новые протоколы.

Серверная сторона, однако, немного больше бегает. Вы должны будете подготовиться к тому, чтобы отойти от спрайтов изображений, сократить количество конкатенаций CSS и Java на своих страницах и подготовить осколки вашего домена для объединения по HTTP / 2..

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

Проверьте с вашим хостом

Наконец, поговорите с вашим WordPress хостинг провайдер или администратор сервера, чтобы убедиться, что вы готовы к HTTP / 2.

После того, как вы подтвердите наличие инфраструктуры, разверните новые протоколы, когда и когда ваши посетители получат от этого наибольшую статистическую выгоду. Если вы не можете связаться с хостом своего сервера, в Интернете доступны инструменты с открытым исходным кодом, которые вы можете использовать для проверки состояния вашего сервера, например инструмент от KeyCDN.

Обязательно следуйте за нами на top5hosting, чтобы получить больше полезных советов о том, как оптимизировать свои проекты, и если у вас есть дополнительные вопросы о протоколе HTTP / 2, проверьте FAQ на Github.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me