Brotli gzip WordPress

Warum Googles Kompressions-Algorithmus „Brotli“ eine echte gzip Alternative ist

Wer will schon kleinere Brötchen backen? — Alle WordPress Professionals, die ihre Website so schnell wie möglich ausliefern wollen. Seit einiger Zeit steht dabei eine Technologie namens Brotli hoch im Kurs.

Aktuell gibt es verschiedene Komprimierungsverfahren. Lange war gzip der Standard, doch inzwischen kauft ihm ein neuer Kompressions-Algorithmus namens Brotli den Rang ab. Und das nicht ohne Grund! Damit deine WordPress Website auch in Sachen Komprimierung mit der Zeit geht, gehört Brotli bei Raidboxes mittlerweile zum Standard. Doch fangen wir erst einmal von vorne an.

Das 1 x 1 der Datenkomprimierung

Datenkomprimierung ist eine Technik, bei der der Speicherplatz von Daten so weit wie möglich verkleinert wird. Denn: je geringer das verbrauchte Volumen, desto kürzer die Übertragungszeit.

Erreicht wird das Verkleinern durch eine Verdichtung oder Reduzierung der Daten. Im Prinzip werden die Informationen dabei in eine kürzere Form umgewandelt, die weniger Speicherplatz verbraucht.

Komprimieren und Entpacken sind zwar zwei Prozesse, doch unterm Strich laufen sie immer noch schneller ab als das einfache Übertragen großer Datenmengen.

Google als Brotli-Bäcker

Der bisherige Komprimierungsstandard im Internet war gzip. Diese Komprimierung arbeitet mit einem Algorithmus namens Deflate, der aus einer Kombination der LZ77 Technik und der Huffman Codierung besteht. Deflate existiert schon seit 1993 und hat sich seitdem bei HTTP Übertragungen zum absoluten Standard etabliert.

Google reichte das aber nicht. In seinen endlosen Bestrebungen, das Internet zu verbessern, entwickelte der Silicon Valley Riese vor einigen Jahren den Algorithmus Zopfli (benannt nach dem Schweizer Hefezopf). Zopfli benutzt eine ähnliche Technik wie Deflate und ist auch kompatibel mit dessen Datenformat, weist aber schon einige Verbesserungen auf.

Genug war das wohl immer noch nicht, denn mittlerweile gibt es Brotli – benannt nach Brötli, Schweizer Brötchen.

Bei Brotli handelt es sich um einen Open Source Algorithmus, der laut Google ein völlig neues Datenformat darstellt. Mit der Kompatibilität zu Deflate ist es zwar jetzt zu Ende, doch dafür bringt Brotli einige andere Vorteile mit sich.

Gzip vs. Brotli: Wer macht das Rennen?

Wie viel Ersparnis bringt Brotli also gegenüber dem Standardverfahren gzip? Berichte zeigen einen eindeutigen Vorsprung:

  • Bei HTML spart Brotli 21 % mehr Speicherplatz als gzip.
  • Bei JavaScript sind es 14 %.
  • CSS wird von Brotli 17 % kleiner gespeichert als von gzip.

Prinzipiell ist der Geschwindigkeitsunterschied zwischen der Übertragung komprimierter und unkomprimierter Daten bereits sehr groß ist. Gzip spart im Vergleich zur Ausgangssituation schon einiges an Speicherplatz. Brotli setzt noch einen drauf – auch wenn die Zahlen im Vergleich zu gzip dann nicht mehr nach massiven Einsparungen aussehen.

Brotli bietet insbesondere bei mobilen Websites Vorteile

Insbesondere mobile Geräte und Datentarife profitieren von der Kompression. Hier ist die verfügbare Bandbreite oft wesentlich geringer, sodass schon 20 Prozent Einsparung eine deutlich bessere User Experience bringen. Webserver und Geräte mögen inzwischen ziemlich schnell sein – nur eben das Internet nicht immer.

Da immer mehr Menschen mobil auf Websites zugreifen und deshalb von der geringeren Größe der Brotli Dateien profitieren (zum Beispiel durch reduzierte Akkubeanspruchung und geringere Übertragungsgebühren), hofft Google, dass der Algorithmus sich in Zukunft als neuer Standard durchsetzt.

Einschränkungen beim Brotli backen

Trotz dieser Vorteile ist Brotli kein Alleskönner. Wohl auch weil der Algorithmus recht jung ist (Google stellte ihn im September 2015 vor), musst du die ein oder andere Einschränkung noch in Kauf nehmen.

Genaue Konfiguration ist wichtig

Einsparungen der Dateigröße sind aber nicht der einzige Maßstab, an denen sich ein Komprimierungsverfahren messen lassen muss. Schließlich willst du die Performance deiner Website verbessern. Da ist auch die Geschwindigkeit, mit der Informationen komprimiert und dekomprimiert werden, ein wichtiger Aspekt. Denn davon hängt ab, wie schnell man Ergebnisse zu sehen kriegt.

Eine falsche Konfiguration zwischen Speicherersparnis und Geschwindigkeit der Umwandlung kann dazu führen, dass gzip sogar schneller ist als Brotli. Sowohl gzip als auch Brotli haben nämlich mehrere Qualitätsstufen (gzip neun und Brotli elf).

Hier ist es also eine Frage des Finetunings, was du aus deiner Konfiguration rausholen möchtest. Testergebnisse zeigen, dass Brotli auf Stufe 4 mehr Speicherplatz einspart und dabei sogar noch etwas schneller arbeitet als gzip auf Stufe 6.

Brotli funktioniert nur unter HTTPS

Brotli funktioniert ausschließlich bei HTTPS Verbindungen. Aber ganz ehrlich: Das ist heutzutage ohnehin der Standard.

*“ zeigt erforderliche Felder an

Ich möchte den Newsletter abonnieren, um über neue Blogbeiträge, E-Books, Features und News rund um WordPress informiert zu werden. Meine Einwilligung kann ich jederzeit widerrufen. Bitte beachte unsere Hinweise zum Datenschutz.
Dieses Feld dient zur Validierung und sollte nicht verändert werden.

Brotli ist perfekt für statischen Content

Ein weiterer, oft diskutierter Knackpunkt ist die Komprimierung dynamischen Contents. Kurz zum Auffrischen:

  • Dynamischer Content wird erst individuell bei deiner Anfrage generiert, zum Beispiel, wenn du dir in einem Blog nur die Einträge bestimmter Kategorien anzeigen lassen willst oder in einem Onlineshop über die Filterfunktion Shirts einer bestimmten Marke in einer bestimmten Größe auswählst. Der Content wird natürlich erst dann komprimiert, wenn er generiert wurde.
  • Statischer Content dagegen liegt bereits komprimiert auf dem Server und wird an alle User gleich ausgeliefert.

Der Knackpunkt beim Komprimieren dynamischer Inhalte: Solange der Server damit beschäftigt ist, den Content kleiner zu verpacken, sieht man erstmal nichts. Erst, wenn die Komprimierung fertig ist, werden die Daten ausgeliefert. Und je besser die Komprimierung sein soll, desto länger dauert sie. Auch bei geringen Komprimierungsraten kann dynamische Kompression schon die Performance einschränken. Statische Inhalte dagegen, die bereits komprimiert vorliegen, können bei einer Anfrage ruckzuck ausgeliefert werden.

In der Praxis zeigte sich, dass Brotli zwar bei statischen Inhalten mehr bringt, wenn der Algorithmus entsprechend konfiguriert wird. Bei dynamischen Inhalten dagegen ziehen viele immer noch gzip vor. Andere argumentieren wiederum, dass Brotli auch bei dynamischem Content mit gzip mithalten kann.

Nicht alle Browser unterstützen Brotli

Was Server betrifft, unterstützen NGINX und Apache (ab Version 2.5) Brotli. Heutzutage sind fast alle Browser mit dabei. Welche Browser Brotli als Komprimierungsstandard (noch) nicht supporten, kannst du auf caniuse.com nachsehen.

Warum Googles Kompressions-Algorithmus "Brotli" eine echte gzip Alternative ist
Quelle: https://caniuse.com/brotli

Falls man wegen bestimmter Browser noch auf Brotli verzichten muss, gibt es eine gute Nachricht: Die Inhalte werden trotzdem an diese User ausgeliefert: Hier schaltet sich dann automatisch gzip ein. Du musst also nicht befürchten, dass man gar nichts mehr zu sehen bekommt.

Fazit

Speicherplatz sparen, Websites schneller ausliefern und die Performance steigern: Da sind wir gerne mit dabei. Meiner Meinung nach liegen die Vorteile auf der Hand. Bei Raidboxes profitierst du direkt davon: Brotli ist auf den Servern standardmäßig eingebaut.

Hat dir der Artikel gefallen?

Mit deiner Bewertung hilfst du uns, unsere Inhalte noch weiter zu verbessern.

Ein Kommentar zu “Warum Googles Kompressions-Algorithmus „Brotli“ eine echte gzip Alternative ist

  1. Kann es sein, dass die gängigen Webseiten-Performance-Tet-Tools nicht erkennen, ob brotli statt gzip eingesetzt ist?

    Zumindest bei Pingdom und Webpagetest.org wird eine Warnung angezeigt. GTMetrix hingegen scheint zu erkennen, wenn brotli statt gzip genutzt wird.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert