gzip vs brotli бързо сравнение

Вчера възникна интересен спор заслужава ли си да се използва brotli вместо добрия, стар и изпитан през годините gzip. Накратко отговора е да и сега ще ви покажа и защо.

Да изясним методологията – ще тестваме резултатите върху няколко сайта (само HTML) директно gzip срещу brotli. Ще се проверява само големината на файла, без времето на компресия. Инструмента за проверка ще е на Paul Calvano (служител в Akamai): Gzip and Brotli Compression Level Estimator

Първия сайт с който ще започнем е на Васил Тошков – cloxy:

cloxy compression test

Сайта на Васко е 18k и идва компресиран със gzip ниво между 5 и 6.
Ако сайта му идва през brotli с най-високата компресия ще успее да изцеди още един килобайт по-малко данни. Което си е горе-долу един TCP пакет. Отделно най-ниското ниво на компресия при gzip е по-добро от brotli което както ще видите по-надолу е частен случай.

Втория сайт е на Jump.bg:

jump compression test

Тук вече запозват интересните неща. Сайта им е 85k и идва компресиран със gzip ниво 6.
Показателно е, gzip размера варира от 18k при най-ниската компресия до 14.8k при най-високата компресия. Което си е напълно в реда на нещата.
Обаче при brotli компресията е 17.6k до 12.2k. Т.е. даже и най-ниската компресия на brotli е по-добра (с около 700 байта) отколкото gzip. При директни сравнения на високите компресии разликата вече става 2.6k отново с превес на brotli.

За трети сайт ще изберем някакъв Ecommerce – silabg.com:

silabg compression test

Тук цифрите са 182k некомпресиран и идва с gzip 6то ниво.
При gzip – 35.9k до 30.1k. brotli – 35.3k до 24k.
Пак се случва същото – и най-ниското ниво на компресия при brotli е по-добро отколкото gzip на най-ниско ниво. При високите нива разликата вече е 6k което много приблизително е 5 TCP пакета или даже 6 при мобилните мрежи.

За четвърти сайт ще изберем някакъв блог – divna.tech:

divna compression test

Тук цифрите са 290k некомпресиран и идва с 40k gzip ниво между 1 и 2. Но по-скоро 1.
gzip – 40.6k до 32.1k, brotli – 35.4k до 24.8k.
Пак се получава същото – даже и най-ниското ниво на компресия brotli е по-добро отколкото gzip. И пак – при високите нива разликата е 7.3k с убедителна победа на brotli.

Ето и един тест за javascript:

javascript compression test

И тест на един css файл:

css compression test

И в двата случая brotli убедително повежда в резултата независимо, че не са HTML файлове.

Изводи – и най-ниското ниво на компресия при brotli е по-добро отколкото gzip. Това е при HTML. При CSS/JS разликите са подобни.

Разбира се при някой сайтове има частни случаи където gzip е по-добър от brotli. Друг пример е и моя сайт – peter.nikolow.me. Но колко са разликите ще ви оставя да си проверите сами с инструмента на Paul оттук.

Споделяне

Was this article helpful?
YesNo

One Comment

David 2023/01/06 Reply

Благодаря за интересната статия. От теб винаги научавам нови неща.

Вашият коментар