Web Developmentpokročilý

Čo je Brotli?

Brotli je moderný kompresný algoritmus vyvinutý spoločnosťou Google, ktorý dosahuje o 15-25 % lepšiu kompresiu ako Gzip. Je optimalizovaný špeciálne pre webový obsah a podporujú ho všetky moderné prehliadače. Označuje sa v HTTP hlavičkách ako „br".

Definícia Brotli

Čo je Brotli

Brotli je bezstratový kompresný algoritmus, ktorý vyvinuli Jyrki Alakuijala a Zoltán Szabadka v spoločnosti Google. Prvýkrát bol predstavený v roku 2015 a od roku 2017 ho podporujú všetky hlavné prehliadače. Brotli využíva kombináciu moderných techník vrátane LZ77, Huffmanovho kódovania a kontextového modelovania druhého rádu.

Prečo je Brotli lepší ako Gzip

  • Vyšší kompresný pomer — Brotli dosahuje o 15-25 % menšie súbory ako Gzip pri rovnakej rýchlosti dekompresie
  • Vstavaný slovník — Brotli obsahuje predpripravený slovník bežných webových reťazcov (HTML tagy, CSS vlastnosti, JavaScript kľúčové slová), čo zlepšuje kompresiu webového obsahu
  • Rýchla dekompresia — dekompresná rýchlosť je porovnateľná s Gzip, takže prehliadač nestrácal čas

Kedy použiť Brotli

  • Statické súbory — pre vopred komprimované assets (JS, CSS, HTML) je Brotli ideálny, pretože pomalšia kompresia sa vykoná len raz
  • CDN — väčšina CDN sietí (Cloudflare, AWS CloudFront, Fastly) podporuje Brotli automaticky
  • Dynamický obsah — pre API odpovede generované v reálnom čase môže byť Gzip lepšia voľba kvôli rýchlejšej kompresii

Praktický príklad

Príklad: Porovnanie kompresie JavaScript bundlu s veľkosťou 500 kB:

Gzip (úroveň 6): 142 kB — kompresia za 15 ms

Brotli (úroveň 6): 118 kB — kompresia za 45 ms

Brotli (úroveň 11): 102 kB — kompresia za 850 ms

Pre statické assets sa oplatí použiť Brotli na úrovni 11 — kompresia sa vykoná len raz pri builde a výsledok sa cachuje. Každý návštevník potom stiahne o 28 % menej dát ako pri Gzip.

Často kladené otázky

Čo je Brotli kompresia?

Brotli je moderný kompresný algoritmus vyvinutý Google, ktorý dosahuje lepšiu kompresiu ako Gzip. Je optimalizovaný pre webový obsah a podporovaný všetkými modernými prehliadačmi. V HTTP hlavičkách sa označuje ako „br".

Podporujú všetky prehliadače Brotli?

Áno, všetky moderné prehliadače (Chrome, Firefox, Edge, Safari, Opera) podporujú Brotli kompresiu. Globálne pokrytie presahuje 97 % používateľov. Brotli však funguje len cez HTTPS spojenie.

Môžem používať Brotli aj Gzip súčasne?

Áno, server môže ponúkať oba formáty. Prehliadač pošle hlavičku Accept-Encoding: gzip, br a server vyberie najlepšiu dostupnú možnosť. Väčšinou sa preferuje Brotli a Gzip slúži ako fallback pre staršie prehliadače.

Prečo Brotli funguje len cez HTTPS?

Prehliadače podporujú Brotli len cez HTTPS, aby zabránili problémom s proxy servermi a sieťovými zariadeniami, ktoré by mohli nesprávne interpretovať Brotli komprimované dáta. Na modernom webe by aj tak všetky stránky mali používať HTTPS.

Súvisiace pojmy

Potrebujete pomôcť s webom?

Napíšte mi a poradím vám s vaším projektom. Prvá konzultácia je zadarmo a nezáväzná.