dhosting.pldhosting.pl
  • Strona główna
  • Zacznij tutaj
  • Kategorie
    • Hosting
    • Poczta
    • Domeny
    • Faktury i płatności
    • Pozostałe
  • Fachowe poradniki
  • Helpdesk 24h
  • Elastyczny Web Hosting →
  • Strona główna
  • Zacznij tutaj
  • Kategorie
    • Hosting
    • Poczta
    • Domeny
    • Faktury i płatności
    • Pozostałe
  • Fachowe poradniki
  • Helpdesk 24h
  • Elastyczny Web Hosting →
Strona główna/Baza wiedzy/Hosting/Inne

Czym jest kompresja i jaka jest różnica między Brotli, a Gzip?

230 wyświetleń 0

Autor: Jan Elastyczny
19.04.2222

Szukasz darmowych sposobów na przyspieszenie działania swojej witryny? Jednym ze sposobów, który każdy właściciel witryny może zastosować za darmo, jest skorzystanie z kompresji. Jeżeli zarówno serwer WWW, jak i przeglądarka, z którą się komunikuje, znają wspólny algorytm kompresji, dane przesyłane przez sieć mogą zostać skompresowane. Skompresowane dane są mniejsze. Mniejsze dane są odbierane szybciej i co za tym idzie strona www również ładuje się odczuwalnie szybciej.

Czym jest kompresja?

Kiedy wpisujesz adres URL do przeglądarki, przeglądarka rozpoczyna rozmowę z serwerem i jedną z informacji jest to, czy może zdekompresować zawartość, a jeśli tak, to jakie „algorytmy” kompresji są obsługiwane.

Serwer nasłuchuje i jeśli kompresja jest włączona, a serwer zna jeden z algorytmów kompresji używanych przez przeglądarkę, skompresuje wszystkie dane i prześle je do przeglądarki w tej formie.

Większość nowoczesnych przeglądarek internetowych obsługuje lub „akceptuje” zawartość zakodowaną w jednym z trzech algorytmów:

  • Deflate
  • Gzip
  • Brotli

Gdy przeglądarka internetowa kontaktuje się z serwerem, wysyła nagłówek o następującej treści:

Accept-Encoding: br, gzip

Informuje on serwer, że przeglądarka obsługuje dane skompresowane w formacie Brotli (br) lub Gzip (gzip). Co ważne, serwery mają możliwość zignorowania tej informacji i zwrócenia nieskompresowanych danych.

Ogólnie rzecz biorąc, dane skompresowane są przesyłane szybciej niż dane nieskompresowane. Dlatego strona dociera do przeglądarki szybciej.

Kompresja dotyczy głównie elementów tekstowych:

  • HTML
  • JavaScript
  • CSS

Stanowią one obecnie dużą część nowoczesnych stron internetowych i mogą być kompresowane przez algorytmy kompresji po stronie serwera.

Z drugiej strony, większość formatów obrazów (jpg, png itp.), większość formatów audio (mp3) i inne nietekstowe pliki binarne są już skompresowane. Ich skompresowanie nie spowoduje żadnej różnicy, więc bez względu na nagłówek Accept-Encoding serwery będą je wysyłać w niezmienionej postaci.

Jak wspomniano wyżej, większość nowoczesnych przeglądarek internetowych akceptuje 3 główne algorytmy kompresji. Większość serwerów używa obecnie jednego lub obu najpopularniejszych z nich – Gzip i Brotli.

Kompresja Gzip

Gzip jest najstarszym i najczęściej używanym algorytmem. Został napisany przez Jeana-loupa Gailly’ego i Marka Adlera. Pierwsza wersja beta została wydana w 1992 roku. Pierwsza właściwa wersja, wersja 1.0, została wydana na początku 1993 roku, czyli w czasie, gdy większość ludzi zaczynała korzystać z Internetu.

Gzip został zaprojektowany jako uniwersalna biblioteka kompresji. Teoria stojąca za Gzipem opierała się na wcześniejszym algorytmie kompresji, DEFLATE.

Ze względu na swoją popularność i fakt, że bardzo dobrze radzi sobie z kompresją małych plików, jest do dziś szeroko stosowany zarówno w różnych systemach operacyjnych, jak i jako podstawowy algorytm kompresji dla serwerów WWW.

Kompresja Brotli

Brotli został opracowany przez pracowników firmy Google, Jyrki Alakuijala i Zoltána Szabadkę, w 2013 roku. Firma Google początkowo szukała lepszego sposobu kompresji plików WOT, czyli czcionek internetowych.

Gzip został pierwotnie zaprojektowany do kompresji plików i został przystosowany do kompresji strumieniowej, aby mógł działać w sieci. Z drugiej strony, Brotli od początku był projektowany z myślą o kompresji strumieni. Dzięki temu jest lepszym wyborem dla serwerów internetowych do kompresji treści przed wysłaniem jej do przeglądarki.

W 2015 roku firma Google opublikowała specyfikację Brotli dla protokołu HTTP. Oprócz określenia sposobu, w jaki przeglądarka powinna powiadamiać serwer, że może dekompresować Brotli, wysyłając nagłówek „Content-Encoding: br„, inżynierowie Google’a wprowadzili do Brotli także inne ulepszenia, które sprawiły, że jeszcze szybciej kompresuje on treści internetowe.

Czym się różnią?

Chociaż oba wywodzą się z algorytmu LZ77, Gzip został zaprojektowany specjalnie do kompresji plików. Biblioteka ta została włączona do wielu różnych programów, które muszą kompresować pliki. Biblioteka ta została włączona do serwerów WWW, gdy kompresowanie zawartości stało się normą. Był to jeden z dwóch algorytmów kompresji określonych w RFC 2616, specyfikacji protokołu HTTPS 1.1, i chociaż nie został zaprojektowany specjalnie do operacji strumieniowych, takich jak serwery WWW, został do nich przystosowany.

Brotli, z drugiej strony, został zaprojektowany specjalnie dla World Wide Web. Firma Google dostrzegła potrzebę bardziej wydajnej kompresji strumieni, dlatego opracowała algorytm Brotli.

Oba algorytmy dobrze spełniają zadania, do których zostały zaprojektowane. Gzip jest nadal używany w Internecie, ponieważ jest lepszy niż nic. Jednak wraz ze wzrostem popularności Brotli coraz więcej serwerów WWW preferuje Brotli od Gzipa. Wiele serwerów, mając możliwość wyboru między tymi dwiema metodami, wybiera Brotli jako metodę domyślną.

Benchmark

Gdy porównano Brotli z Gzip, okazało się, że Brotli lepiej kompresuje pliki:

  • 14% mniejsze pliki JavaScript
  • 21% mniejsze pliki HTML
  • 17% mniejsze pliki CSS

Ponieważ Brotli został zaprojektowany do kompresji strumieni „w locie”, jest szybszy zarówno w kompresji treści na serwerze, jak i dekompresji w przeglądarce niż jego starszy brat Gzip. W niektórych przypadkach ogólna dekompresja front-end jest nawet o 64% szybsza niż Gzip.

Tags:brotligzipporównanie brotli gzip

Czy ten artykuł był pomocy?

Tak  Nie
Powiązane artykuły
  • Zalety i wady wersji darmowej i płatnej Elementora
  • Na co zwrócić uwagę tworząc formularz kontaktowy w Elementorze?
  • Co to jest Elementor Kit i na jakie typy się dzieli?
  • Czym są i jakie są popularne dodatki do Elementora?
  • Co to jest Elementor i do czego służy?
  • Czym są wtyczki WordPress?
Elastyczny Web Hosting
Fachowe poradniki
  • Drzewo kategorii i tagi – jak zarządzać strukturą serwisu contentowego
  • Headless CMS – WordPress jako backend Twojego serwisu
  • Jak stworzyć wtyczkę do WordPressa? Poradnik dla początkujących
  • Jak założyć bloga? Kompletny przewodnik instalacji WordPressa dla początkujących
  • Jekyll, generator stron statycznych, alternatywą dla WordPressa
  • Tailwind CSS – utility-first framework alternatywą dla Bootstrap
  • Vue.js jako wtyczka do WordPressa
  • Wielojęzyczna strona w WordPressie bez użycia wtyczek – jak ją stworzyć?
  • WordPress MultiSite – omówienie, instalacja oraz konfiguracja
Inne
  • Czym jest kompresja i jaka jest różnica między Brotli, a Gzip?
  • Zalety i wady wersji darmowej i płatnej Elementora
  • Na co zwrócić uwagę tworząc formularz kontaktowy w Elementorze?
  • Co to jest Elementor Kit i na jakie typy się dzieli?
  • Czym są i jakie są popularne dodatki do Elementora?
  • Co to jest Elementor i do czego służy?
Pokaż wszystko 38  
Najpopularniejsze
  • W jaki sposób skonfigurować program pocztowy?
  • Czym różni się CC od BCC podczas wysyłania wiadomości e-mail?
  • Jak wykonać polecenie traceroute w systemie Windows?
  • Jak skonfigurować pocztę w Outlook 365?
  • Jak odbierać pocztę ze swojej skrzynki na Gmailu?
Kategorie
  • Domeny
    • Registry Lock
    • Rejestracja i odnowienia domen
    • Transfery domen
    • Zarządzanie domenami w dPanelu
  • Faktury i płatności
    • Faktury VAT
    • Inne
    • Metody i płatności
    • Problemy z płatnością
    • RODO
    • Zarządzanie fakturami i płatnościami w dPanelu
  • Hosting
    • Operacje PHP
    • Problemy z działaniem stron WWW
    • Redis
    • Rodzaje błędów HTTP
    • SSH
    • Strony WWW
    • Zacznij tutaj
    • Aplikacje internetowe (CMS
    • Bazy danych
    • Certyfikaty SSL
    • Cloudflare
    • CRON
    • Inne
    • Elastyczny Web Hosting
    • Kooperacja
    • FTP
    • dKonta / dVPS
  • Poczta
    • Aliasy pocztowe
    • Filtry antyspamowe
    • Problemy z odbiorem wiadomości
    • Gmail
    • Problemy z wysyłką wiadomości
    • Konfiguracja programów pocztowych
    • Webmail dPoczta.pl
    • Zarządzanie pocztą w dPanelu
    • Migracja skrzynek
  • Kalendarz
  • Pozostałe
    • Zarządzanie kontem
    • Inne
    • Program Partnerski
    • Bezpieczeństwo
  • Strona główna
  • Zacznij tutaj
  • Status usług
  • Fachowe poradniki
  • Helpdesk 24h
  • Elastyczny Web Hosting →
  • Copyright © 2022 dhosting.pl Sp. z o.o.