Stranger Than Usual

Wie viel bringt die Brotli-Kompression bei mir insgesamt?

Ich hatte ja vor ein paar Tagen groß angekündigt, dass dieser Server hier endlich Brotli unterstützt. Da hatte ich auch ein Beispiel angegeben, um wieviel sich die Homepage verkleinert hat.

Das ist natürlich nicht ganz repräsentativ, also habe ich mal alles zusammengerechnet, was hier komrpimiert ausgeliefert wird. Das geht recht kompakt mit folgendem Befehl:

du -cB1 --apparent-size $(find dist/ \( -iname "*.html.br" -o -name "*.css.br" -o -name "*.svg.br" \) )

Kurz aufgeschlüsselt: der find-Befehl sucht nach allen Dateien, die auf .html.br, .css.br oder .svg.br enden. Analog dazu kann man natürlich auch andere Dateiendungen nehmen oder ganz andere Suchschemata. du -cB1 summiert die Dateigrößen der Eingabedateien auf und gibt sie mir in bytes an.

Ich habe hier mal das atom-feed außen vor gelassen, ebenso Bildateien, die ohnehin schon komprimiert sind und die ich eh nicht mit Brotli oder gz komprimiere (JPEG, PNG und WebP).

Das Ergebnis

  • keine Kompression: 10024688B oder ≈9,6MiB
  • gz (mit Zopfli): 4170752B oder ≈4MiB (≈42% der unkomprimierten Daten)
  • Brotli: 3488654B oder ≈3,4MiB (≈35% der unkomprimierten Daten oder ≈84% der Zopfli-komprimierten Daten

Im Verhältnis zur Homepage also ein bisschen schlechter, dafür macht sich der Unterschied zwischen Brotli und Zopfli noch einmal deutlich besser bemerkbar.

Ein Problem erzeugt die Kompression natürlich: Ich muss alles mehrfach hochladen. So lange deutlich mehr Leute die Dateien herunter- als hochladen, sollte das aber trotzdem besser sein. Und wie gesagt: Die gz-komprimierten Dateien entferne ich vielleicht früher oder später. Das erspart mir das Hochladen, vor allem aber auch das Komprimieren selber. Aber das drängt nicht.