Czym jest ten magiczny protokół. Wikipedia mówi:

pl.wikipedia.org/wiki/HTTP/2

HTTP (ang. Hypertext Transfer Protocol) – protokół przesyłania dokumentów hipertekstowych to protokół sieci WWW (ang. World Wide Web). Obecną definicję HTTP stanowi RFC 2616. Za pomocą protokołu HTTP przesyła się żądania udostępnienia dokumentów WWW i informacje o kliknięciu odnośnika oraz informacje z formularzy. Zadaniem stron WWW jest publikowanie informacji – natomiast protokół HTTP właśnie to umożliwia.

Dzięki temu protokołowi możemy odczytywać treści strony internetowej wprost z naszej przeglądarki. Protokół ten powstał, bagatela, w 1990 roku i wykorzystuje się go do dnia dzisiejszego.

Od kilku lat w sieci pojawia się coraz więcej informacji o tym, że protokół ten wchodzi w drugą fazę i przybiera zupełnie nową odsłonę. Powodów jest kilka, ale głównym jest to, iż ładowanie stron internetowych „zjada” więcej zasobów niż kiedykolwiek wcześniej i obsłużenie wszystkich zapytań w przyzwoitym czasie staje się problematyczne.

Dla przykładu, aby w protokole http 1.1 pobrać wszystkie pliki z serwera musimy wykonać 3 oddzielne połączenia TCP

HTTP

W protokole http/2 już tylko jedno

HTTP

To drastyczna zmiana. Wprowadzenie multiplexingu daje niesamowite efekty i podnosi wydajność. Szczególnie widać to na zmniejszonym opóźnieniu po stronie klienta końcowego, czyli przeglądarce internetowej.

Protokół mimo, iż oparty jest w głównej mierze na eksperymentalnym protokole Google SPDY to ewoluował wprowadzając szereg ulepszeń w całym procesie. Główne zmiany to:

  • Współbieżność, o której już wspomniałem, czyli za pomocą jednego połączenia, odpowiedzi mogą być odbierane równocześnie.
  • Zależności strumieniowe: klient może wskazać serwerowi, które zasoby są ważniejsze od innych.
  • Kompresja nagłówka: zmniejszono rozmiar nagłówka HTTP.
  • Serwer może wysyłać zasoby, których klient jeszcze nie zażądał

Wzrost szybkości działania stron internetowych

Jak podaje serwis Cloud Flare poprawa szybkości wczytywania stron przy wykorzystaniu HTTP/2 jest praktycznie dwukrotna:

HTTP 1.x9.07 sec.
HTTP/24.27 sec.

Dzięki temu jakość korzystania z serwisów dla klientów jest dużo większa.

Dodatkowo praktycznie wszystko wskazuje na to, że wdrożenie HTTP/2 może być brane przez Google jako poprawa czynnika rankingowego. Dzieje się tak, ponieważ HTTP/2 ma ogromny wpływ na szybkość wczytywania stron internetowych, a jak wiadomo Google zachęca do pracy nad ich optymalizacją.

Wady

Strony powinny posiadać dodatkowo certyfikat HTTPS, ale to akurat pozytywny aspekt i należy pamiętać, że protokół HTTP/2 nie jest wspierany przez wszystkie przeglądarki, a jedynie przez te najnowsze.

Podsumowanie

Śmiało można uznać, że przejście na ten protokół nie powoduje żadnych większych problemów, a korzyści jakie płyną z tego rozwiązania są zdecydowanie większe.

0 Shares:
Dodaj komentarz

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

Zobacz także
MVP
Czytaj więcej

Budowanie Minimum Viable Product

Patrząc na rynek można powiedzieć, że wiele startupów ignoruje rzeczywistość. Próbuje odwlec to, co nieuchronne — moment, w którym ich biznes musi dojrzeć, osiągnąć zysk i stać się prawdziwą, zrównoważoną firmą.
Aplikacje Czasu Rzeczywistego
Czytaj więcej

Aplikacje webowe czasu rzeczywistego

Wyjrzyj za okno i zobacz otaczający Cię świat pełen informacji, obrazów, słów i treści, które ma do przekazania. Teraz wyobraź sobie, ze musiałbyś ten widok odświeżać by zobaczyć coś nowego.
Kiedy to oprogramowanie decyduje, czy przeżyjesz
Czytaj więcej

Kiedy to oprogramowanie decyduje, czy przeżyjesz

Mówią, że dwie głowy są lepsze niż jedna. Nic więc dziwnego, że spora część firm programistycznych zaczyna coraz przyjaźniej spoglądać na technikę programowania w parach. Dwie osoby pracują wspólnie nad pojedynczym blokiem kodu - jedna jest kierowcą, druga nawigatorem. Kierowca w tym procesie jest odpowiedzialny za staranne opracowanie kodu, a zadaniem nawigatora jest przeglądanie i koncentrowanie się na planie działania. Istnieje wiele badań, które przedstawiają bardzo duże zalety wpływające na zwiększoną wydajność oraz bezpieczeństwo i solidność produkowanego oprogramowania. Ale czy w każdej kwestii?