HTTP/2
HTTP/2 je moderní verze protokolu HTTP (Hypertext Transfer Protocol), který se používá pro komunikaci mezi webovým prohlížečem a serverem. Představuje výrazné zlepšení oproti předchozí verzi HTTP/1.1 – především díky zvýšení rychlosti, efektivitě a lepšímu využití zdrojů.
HTTP/2 bylo oficiálně vydáno v roce 2015 a jeho hlavním cílem je urychlit načítání webových stránek.
Klíčové vlastnosti HTTP/2
- Multiplexing
HTTP/2 umožňuje, aby více požadavků a odpovědí probíhalo současně přes jedno spojení, aniž by se vzájemně blokovaly. Tím řeší problém „head-of-line blocking“ známý z HTTP/1.1, kdy každý požadavek čekal na dokončení předchozího. - Server Push
Server může proaktivně zaslat soubory, o kterých ví, že je prohlížeč bude potřebovat, ještě před tím, než je prohlížeč explicitně požádá. To snižuje počet požadavků nutných k načtení stránky. - Header Compression (HPACK)
HTTP/2 používá algoritmus HPACK ke kompresi HTTP hlaviček. To snižuje objem dat a tím také čas potřebný pro přenos požadavků a odpovědí. - Binary protokol
Zatímco HTTP/1.1 komunikuje v textovém režimu, HTTP/2 používá binární formát. Ten umožňuje efektivnější parsování a vyšší rychlost přenosu. - Prioritizace požadavků
HTTP/2 umožňuje serveru a klientovi nastavovat priority jednotlivých požadavků, což pomáhá efektivněji načítat obsah stránky – důležité prvky se načtou dříve než méně důležité.
Výhody HTTP/2 v praxi
- Rychlejší načítání stránek – zejména složitých webových aplikací s velkým množstvím zdrojů (CSS, JavaScript, obrázky).
- Lepší výkon na mobilních zařízeních – díky menšímu počtu připojení a lepší efektivitě datových přenosů.
- Nižší zátěž serveru a sítě – díky optimalizaci přenosu a multiplexování.
Podpora v prohlížečích
HTTP/2 je plně podporováno všemi moderními webovými prohlížeči (Chrome, Firefox, Safari, Edge).
Ukázka komunikace přes HTTP/2
Uživatel načte webovou stránku:
- Klient a server vytvoří jedno TCP spojení.
- Klient zašle současně více požadavků (HTML, CSS, JS, obrázky).
- Server díky multiplexingu a prioritizaci rychle vrátí všechny odpovědi.
- Stránka se načte rychleji díky současnému zpracování požadavků.
Jak zjistíte, zda váš web používá HTTP/2?
Nejjednodušší je použít nástroje v prohlížeči (např. Chrome DevTools):
- Otevřete Chrome DevTools (F12).
- Jděte na záložku Network.
- Klikněte pravým tlačítkem na hlavičku tabulky a přidejte sloupec Protocol.
- Zde uvidíte, zda se používá HTTP/2 (h2) nebo starší HTTP/1.1.