Co to jest i czy warto włączać protokół HTTP/2?

, Czas czytania: 5:00 min.

Protokół http/2

Z pewnością chcielibyśmy, aby obecne aplikacje webowe mogły działać szybciej bez ponoszenia nakładów na lepsze łącza sieciowe lub infrastrukturę serwerową. To oczywiście było głównym celem, który przyświecał twórcom protokołu HTTP/2. Odpowiedź na tytułowe pytania zawarte są w poniższym artykule.

Spis Treści:

Definicja protokołu HTTP

Protokół HTTP (ang. Hypertext Transfer Protocol) to w wielkim skrócie zestaw reguł, według których przebiega komunikacja w sieci Web. Komunikacja ta to nic innego jak żądania klienta (czyli najczęściej przeglądarki WWW) dotyczących pewnych danych oraz odpowiedź serwera HTTP na te żądania. Protokół ten zyskał popularność, ponieważ od lat 90 nie był on modernizowany ze względu na jego uniwersalność oraz prostotę działania.

HTTP/2 – jest to unowocześniona wersja protokołu HTTP. Został on opracowany z inicjatywy Google, ale w ramach IETF (Internet Engineering Task Force). Organizacja ta standaryzuje sieci komputerowe oraz internet od 1986 roku. Dokładna specyfikacja protokołu HTTP/2 znajduje się w dokumencie RFC7540 z maja 2015.

Zalety protokołu HTTP/2

  • szybkość działania – dzięki wprowadzonemu w tym protokole multipleksingowi, który zmniejsza ilość połączeń TCP, mechanizmowi Push i kompresji HPACK co naturalnie przyspiesza transfer danych w trojaki sposób,
  • odciążenie serwera – dzięki szybkości połączenia serwer przez dłuższy czas pozostaje w stanie bezczynności co synchronizuje obsługę klientów lub może pozwolić na obsługę dużo większego ruchu w tej samej konfiguracji,
  • bezpieczeństwo – HTTP/2 jest kolejnym bodźcem do wdrożenia certyfiaktu SSL,
  • możliwość nadawania priorytetów zasobom – możemy decydować, które zasoby mają się pobierać wcześniej od innych,
  • szerokie wsparcie popularnych przeglądarek – od 2015 roku nowa wersja protokołu jest obsługiwana przez Google Chrome, Opera, Mozilla Firefox, Microsoft Internet Explorer 11 wzwyż, Safari, Silk i Edge.
  • równoległe pobieranie zasobów – od tej pory zasoby nie są kolejkowane i kilka zasobów może być pobieranych na raz w jednym połączeniu TCP,
  • mniejsza podatność na błędy – dzięki binarnej metodzie informacji,
  • pełna wsteczna kompatybilność – włączenie HTTP/2 nie powoduje zerwania zgodności z HTTP 1.1.

Wady protokołu HTTP/2

  • HTTP/2 wymusza SSL – to z jednej strony wielka zaleta, ale z drugiej wzrost wydajności HTTP/2 może nie być tak duży w stosunku do serwerów, które do tej pory nie korzystały z szyfrowania SSL.
  • brak możliwości wykorzystania w najtańszych hostingach – jeżeli jesteś przywiązany do mało nowoczesnego dostawcy hostingu współdzielonego, HTTP/2 może być poza Twoim zasięgiem.
  • konieczność wykonania dodatkowej pracy administracyjnej – starsze dystrybucje mogą wymagać pobrania paczki nowszej wersji Apache z nieoficjalnych repozytoriów.

Różnice HTTP/2 a HTTP 1.1

  • Multipleksowanie – czyli możliwość równoległego pobierania wielu zasobów za pomocą jednego połączenia TCP.
  • HTTP/2 Push – możliwość wysyłania zasobów strony do przeglądarki jeszcze zanim o nie zapyta.
  • Możliwość priorytetyzacji zasobów – gdy wiadomość HTTP może zostać podzielona na wiele pojedynczych ramek, a my pozwalamy na multipleksowanie ramek z wielu strumieni, kolejność, w której ramki są przesyłane staje się krytycznym czynnikiem wpływającym na wydajność, dlatego standard HTTP/2 pozwala, aby każdy strumień miał własną wagę.
  • a) każdemu strumieniowi można przypisać wagę całkowitą od 1 do 256

    b) każdy strumień może mieć wyraźną zależność od innego strumienia

  • Kompresja HPACK – każdy transfer HTTP zawiera zestaw nagłówków opisujących przesyłany zasób i jego właściwości, a wszystko wysyłane jest jako zwykły tekst i zajmuje sporo kilobajtów. HTTP/2 kompresuje się w metadane nagłówka żądania i odpowiedzi przy użyciu formatu kompresji HPACK, który wykorzystuje proste i znane techniki: statyczny kod Huffmana i metodę słownikową.
  • Binarny zestaw przesyłu nagłówków – wpływ na wydajność komunikacji ma nowa warstwa binarna ramkowania, która określa sposób enkapsulacji i przesyłania wiadomości HTTP między klientem a serwerem.

Wpływ na SEO i pozycjonowanie

Jeśli przykładasz wagę do technicznych aspektów SEO, w tym do prędkości wczytywania strony, to najprawdopodobniej HTTP/2 będzie czymś dla Ciebie. Każda inicjatywa zwiększająca wydajność i bezpieczeństwo sieci, która dodatkowo powstaje z inicjatywy Google jest promowana przez Google. Strony hostowane na serwerach wykorzystujących HTTP/2 z pewnością są kilka punktów do przodu. Warto wspomnieć, że obecnie z powodu niewiedzy i powszechnej ignorancji dotyczącej zaawansowanych opcji hostingu, jeszcze stosunkowo mało witryn wykorzystuje protokół HTTP/2. Należy tutaj również dodać, że jest to ciekawa i stosunkowo tania opcja na znaczny upgrade własnej witryny.

Jak wygląda proces instalacji i włączenia HTTP/2?

Instalacja HTTP/2 jest możliwa na większości serwerów HTTP.

Przykład: Instalacja na Apache2 ogranicza się do kilku kroków:

  • Włączenie certyfikatu SSL
  • Włączenie modułu http2
  • Restart serwera
  • Edycja pliku httpd.conf:
  • I. odkomentowanie linijki (LoadModule http2_module) i (modules/mod_http2.so)

    II. dodanie Protocols h2 http/1.1 w pliku httpd.conf lub tagach <VirtualHosts>

Podsumowanie protokołu HTTP/2

Mimo, że dopiero ok. 15% witryn korzysta z tego standardu, jest wiele praktycznych zalet wykorzystywania nowej wersji protokołu HTTP. Czy warto włączyć HTTP/2? Oczywiście, że tak. To właśnie teraz jest szansa na wykorzystanie jego zalet związanych z SEO. Większość stron działa w pełnym szyfrowaniu SSL, a więc warto zrobić krok naprzód.

TAGI:

Zostaw komentarz do artykułu: Co to jest i czy warto włączać protokół HTTP/2?

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Zainteresowała Cię oferta?

Kompleksowa oferta

Kliknij po bezpłatną wycenę

Wyceń projekt