Brotli & Wordpress: 20% kleinere Brötchen backen

Jeder der WordPress auf professioneller Ebene benutzt und seine Webseite schnell ausliefern möchte, greift seit Kurzem dabei auf Brotli eine neue Technologie zur Komprimierung zurück. Sie ist hoch im Kurs weil sie eine Seite schneller machen kann. Wie diese Technologie funktioniert erfahren Sie hier. Zur Zeit stehen verschiedene Komprimierungsverfahren zur Verfügung. GZIP war über lange Zeit Standard, allerdings läuft der neue Algorithmus mit dem Namen Brotli GZIP den Rang ab. Festzustellen ist: Mit Brotli kann WordPress schneller werden! Tatsächlich bauen Profis Brotli inzwischen standardmäßig mit ein, damit die von Ihnen ausgelieferte Webseite was die Komprimierung betrifft aktuell und zeitgemäß ist.

Brotli ist ein Kompressionsalgorithmus von Google

Wer zum ersten Mal den Namen des Algorythmus “Brotli” hört, denkt in erster Reihe an ein Gebäck als an die Datenkompression. Das wurde wohl durchaus von Goolge so beabsichtigt, denn der Name Brotli leitet sich von dem Schweizer Ausdruck für ein Gebäck ab, also “Brötli”. Mit Brötchen und Kuchen hat dieser Brotli jedoch nicht viel gemeinsam. Brotli ist im Internet angekommen, um auch zu bleiben und insbesondere soll er GZIP abzulösen. Brotli ist also ein Algorithmus zur Datenkompression, der von Google als ein Open-Source-Projekt veröffentlicht worden ist. Der Algorithmus kombiniert, wie Google selbst sagt, den LZ77-Algorithmus mit Huffman-Kodierung und der zweistufigen Kontextmodellierung. Für Laien ganz einfach erklärt: Brotli macht alle Dateien noch kleiner als es GZIP und Co können. Das finden viele ganz toll und freuen sich über mehr Performance im Netz.

Brotli soll bald GZIP ablösen, wenn es nach dem Willen von Google geht!

Zur Zeit wird Brotli schon von Firefox und Google Chrome unterstützt und angewendet und zwar beim Woff2 Format, also dem Webfont-Format, das durch eine extrem kleine Größe auffällt. Brotli soll sich aber weiter ausbreiten und den GZIP ablösen, somit neuer Standard bei der Kompression von Webinhalten werden. Seit dem Ende 2015 gibt es also die Möglichkeit, viel mehr als die Fonts mit Brotli zu komprimieren. Diese Technik ist noch relativ neu und daher noch nicht so stark verbreitet. Doch das kann sich unter bestimmten Umständen sehr bald ändern. Brotli greift gezielt den GZIP an und gilt bei vielen schon als der Nachfolger von GZIP.

Brotli und seine Stärken und Schwächen

Brotli ist insbesondere nützlich für statische Dateien, denn diese werden mit dem Algorithmus zur Datenkompression richtig zusammengedrückt. Das Volumen der Daten wird so gut und gerne nochmal 20 bis 25 Prozent kleiner, ehe es im Browser verschickt wird, also von Brotli, werden die Daten dann in voller Größe verarbeitet. Aber auch bei Brotli ist nicht alles ideal gelöst und somit hat dieser Algorithmus durchaus ebenfalls seine Schwächen. Bei den dynamischen Inhalten und einer On-the-Fly-Komprimierung ist die Bilanz von Brotli nicht mehr ganz so ideal und das zieht stark an der Performance. Im Cloudflare Blog, wurde Brotli in Benchmarks genau getestet.
Hier das Fazit bei Cloudflare: “Der aktuelle Zustand von Brotli gibt uns einige gemischte Eindrücke. Es gibt keine Ja / Nein-Antwort auf die Frage “Ist Brotli besser als gzip?”. Es sieht definitiv nach einem großen Gewinn für die Komprimierung statischer Inhalte aus, aber im Web, wo der Inhalt dynamisch ist, müssen wir auch die direkte Komprimierung in Betracht ziehen.
So wie ich es sehe, hat Brotli bereits einen Vorteil gegenüber zlib für große Dateien (größer als 64 KB) bei langsamen Verbindungen. Diese machen jedoch nur 20% unseres Stichprobendatensatzes (und 80% der Gesamtgröße) aus.
Unser Brotli-Modul verfügt über eine minimale Größeneinstellung für die Brotli-Komprimierung, mit der wir gzip für kleinere Dateien und Brotli nur für große verwenden können.
Es ist wichtig, sich daran zu erinnern, dass zlib den Vorteil hat, jahrelang das Optimierungsziel der gesamten Web-Community zu sein, während Brotli der Entwicklungsaufwand eines kleinen, aber fähigen und talentierten Teams ist. Es besteht kein Zweifel, dass sich die aktuelle Implementierung erst mit der Zeit verbessern wird.”(Quelle: https://blog.cloudflare.com/results-experimenting-brotli/)

Brotli bei Nginx und Apache

Wie bereits bekannt, ist Brotli schon seit dem Ende des Jahres 2015 bereit GZIP als Standard abzulösen. Daher unterstützen die aktuellen Browser (Firefox 44+, Chrome 49+) diesen Algorithmus zur Datenkompression von Google. Für die Server ist Brotli jedoch noch neu und daher fehlt es natürlich hier an der adäquaten Unterstützung. Abhilfe schaffen hier notwendige Module. Für den Nginx veröffentlichte Google bereits ein Modul, auch für die Apache Server gibt es schon ein inoffizielles Modul, ebenso wie für den Node.js von Mozilla. Man kann Brotli demnach durchaus Live einsetzten, wenn man es sich zutraut und sich etwas damit auskennt.

Das letzte Bisschen an Einsparung mit der Kompression

Bei Brotli können Sie nicht mit gigantischen Einsparungen rechnen, sondern mit einem kleinen Bisschen mehr als GZIP bieten kann, was aber immerhin noch dafür nötig ist, um eigene Blogs oder Websites noch effektiver ausliefern zu können. Minimalistische, statische Seiten sind inzwischen wieder inline und dadurch wird die HTML-Datei selbst erneut etwas größer. Mit Brotli bekommt sie jetzt aber jenen kleinen Anstoß, den sie braucht, um effektiver und noch schneller geladen zu werden. Abgesehen davon, dass Mobile Geräte ganz allgemein von der Kompression profitieren können und die Datentarife bei den Smartphones deutlich weniger belastet sein werden. Zur Zeit geht es nämlich darum Volumen einzusparen. Komprimieren, verkleinern und eine möglichst geringe Menge an Daten zu senden. Einsparen also wo es nur möglich ist. Brotli kann ein kleiner, sehr wichtiger Schritt sein, mit dem Inhalte stärker als bisher komprimiert werden.

Google selbst komprimiert seine Displaywerbungen mit Brotli

Google verwendet selbst für die Displayanzeigen seinen Algorithmus zur Datenkompression Brotli, Der Algorithmus von Brotli ist quelloffen und steht auf GitHub zur Verfügung.
Google entwickelte die beiden Kompressionsalgorithmen Zopfli und Brotli vor allem um Webinhalte effizienter darzustellen, sodass bei einer Displayanzeige die für Google als Unternehmen sehr lukrative Werbung im Ladevorgang nicht zu stark beeinträchtigt wird. Zopfli ist mit Deflate kompatibel, das vor allem im Archivformat ZIP, den gzip-Dateien, PDF-Dokumenten und den Bildern im PNG- und TIFF-Format eingesetzt wird.

Bei Brotli hat Google auf ein anderes Datenformat gesetzt und braucht daher ein damit kompatibles Frontend. Weil Brotli schon seit einiger Zeit in den Browsern Firefox, Google Chrome, Opera und Microsofts Edge eingebaut ist, stellt seine Kompatibilität zurzeit nur unter Safari und dem bereits veralteten Internet Explorer eine Hürde dar, aber bei diesen Browsern springt Immer noch GZIP ein, damit Inhalte dem Nutzer angezeigt werden können.

Sie erfahren hier alles zu Brotli und WordPress

In diesem Artikel erfahren Sie alles zu den folgenden Punkten:

  • Wie funktioniert Komprimierung?
  • Wer treibt den Komprimierungsstandard voran?
  • Brötli vs. GZIP
  • Welche Einschränkungen hat Brötli zur Zeit?
  • Das Wichtigste zur Datenkomprimierung

Wie funktioniert Komprimierung?

Bei der Datenkomprimierung wird der Speicherplatz der betreffenden Daten so stark es möglich ist verkleinert. Je geringer das durch Daten verbrauchte Volumen ist, umso mehr verkürzt sich ihre Übertragungszeit.
Erreicht wird die Komprimierung durch das Verdichten oder Reduzieren von Daten. Informationen werden dabei in ihrer Form verkürzt, welche mit weniger Speicherplatz auskommt.
Komprimieren und Entpacken sind zwei verschiedene Prozesse, aber sie laufen insgesamt schneller ab als einfaches Übertragen von großen Datenmengen.

Google hat Brotli entwickelt und treibt den Komprimierungsstandard voran?

GZIP war der Komprimierungsstandard im Internet über lange Zeit. Dieser arbeitet mit dem Algorithmus Deflate, welcher aus der Kombination von der Technik LZ77 mit der Huffman-Codierung zusammengesetzt ist. Deflate gibt es bereits seit dem Jahr 1993 und etablierte sich bei HTTP-Übertragungen zu einem absoluten Standard.

Google fand das nicht ausreichend. In der stetigen Bestrebung, das Internet besser werden zu lassen, entwickelte man bei dem Riesen aus dem Silicon Valley schon vor mehreren Jahren einen neuen Algorithmus der Zopfli genannt wurde (wie der Schweizer Hefezopf). Zopfli setzt eine dem Deflate ähnliche Technik ein. Es ist daher kompatibel mit diesen Datenformat, wurde jedoch bereits deutlich verbessert.

Das reichte den Google-Technikern noch nicht aus. Sie entwickelten mittlerweile Brotli – nach dem Schweizer Brötchen benannt.
Brotli ist ein Open Source Algorithmus uns stellt ein ganz neues Datenformat dar. Die Kompatibilität zu Deflate ist damit zu Ende. Brotli hat aber einige neue Vorteile.

GZIP vs. Brotli

Brotli hat einiges an Ersparnis zu bieten, aber wie viel spart Brotli tatsächlich gegenüber dem bisherigen Standardverfahren GZIP ein? Berichten zufolge hat Brotli eindeutig einen Vorsprung GZIP gegenüber:

  • HTML – Brotli spart 25% mehr an Speicherplatz ein als GZIP es tut.
  • JavaScript -Brotli spart 17% mehr an Speicherplatz ein als GZIP.
  • CSS – Brotli spart 20% mehr Speicherplatz ein als es GZIP tut.

Der Geschwindigkeitsunterschied zwischen einer Übertragung von komprimierten und unkomprimierten Daten ist bereits enorm. GZIP spart, zur Ausgangssituation betrachtet, bereits viel Speicherplatz ein. Brotli aber setzt hier einen drauf – auch dann, wenn die Zahlen gegenüber GZIP nicht nach so enormen Einsparungen aussehen.

Brotli ist insbesondere bei einer mobilen Seite von Vorteil!

Vor allem mobile Geräte und deren Datentarife profitieren von einer Kompression mit Brotli. Hierbei ist die zur Verfügung stehende Bandbreite in der Regel wesentlich geringer, daher bringen bereits 20% Einsparung eine sehr viel bessere Nutzererfahrung mit sich. Webserver und Geräte sind mittlerweile ziemlich schnell – aber das Internet ist es nicht immer. Daher ist im Netz die Datenkomprimierung sehr wichtig um Volumen einzusparen und die Performance der Seiten zu verbessern.

Da stetig mehr Nutzer auf Webseiten mit ihren mobilen Geräten zugreifen, profitieren sie von den kleineren Brotli-Dateien besonders stark. Ihr Akku wird weniger beansprucht und sie zahlen geringere Übertragungsgebühren. Google wünscht sich, dass dieser neue Algorithmus bald als der neue Standard der bei der Kompression durchgesetzt sein wird.

Welche Einschränkungen hat Brotli

Trotz seiner vielen Vorteile kann Brotli noch lange nicht alles. Da dieser Algorithmus noch ziemlich jung ist, Google hat ihn September 2015 vorgestellt, muss man als Nutzer mit der einen oder anderen Einschränkung leben. Welche das sind lesen Sie hier gleich genauer.

a.) Bei Brotli ist die genaue Konfiguration sehr wichtig

Die Einsparungen bei der Dateigröße sind jedoch nicht das Einzige, an dem dieses Komprimierungsverfahren gemessen wird. Nicht zuletzt soll ja die Performance der Webseiten verbessert werden. Da ist natürlich die Geschwindigkeit, mit welcher Informationen komprimiert sowie dekomprimiert werden, ebenfalls ein sehr wichtiger Aspekt. Davon hängt nämlich ab, in welcher Zeit der Besucher einer Webseite die Ergebnisse sehen kann.

Die falsche Konfiguration, von Speicherersparnis mit der Geschwindigkeit in der umgewandelt wird, kann manchmal dazu führen, dass GZIP in manchen Fällen schneller ist als das Brotli. Sowohl bei GZIP sowie bei Brotli gibt es in der Tat mehrere Qualitätsstufen (bei GZIP sind es neun und bei Brotli sind es elf).

Das Finetuning ist also dafür verantwortlich, was Sie aus Ihrer Konfiguration herausholen können. Testergebnisse haben gezeigt, dass Brotli auf seine Stufe 4 mehr an Speicherplatz einsparen kann und dabei tatsächlich etwas schneller ist als GZIP auf dessen Stufe 6.

b.) Brotli funktioniert nur bei HTTPS-Vernindungen!

Google hat offiziell verkündet, dass der Einsatz von HTTPS für die Suchmaschine ein Rankingsignal ist. Daher sollte man sehr zeitnah alle seine Webseiten auf SSL umstellen. Tatsächlich liefert HTTP2 einen zusätzlichen Performanceschub und dieses ist einer von vielen Gründen, warum einige Webhosting-Anbieter schon seit einiger Zeit kostenloses SSL mit nur einem Klick standardmäßig ihren Kunden anbieten.

c.)Brotli die ideale Komprimierung für statischen Content

Noch ein oft diskutierter Punkt im Zusammenhang mit Brotli ist die Komprimierung von dynamischem Content. Wann wird dynamischer Content generiert? Der dynamische Content wird individuell bei einer Anfrage generiert, beispielsweise wenn sich ein Nutzer in einem Blog nur Einträge aus bestimmten Kategorien anzeigen lässt oder wenn er im Onlineshop über die dort eingebaute Filterfunktion Hosen von einer bestimmten Marke und einer bestimmten Größe anschauen will. Der Content wird erst komprimiert, wenn er bereit generiert worden ist. Der statische Content hingegen liegt schon komprimiert auf einem Server bereit und wird an jeden User gleich geschickt.
Der springende Punkt beim Komprimieren von dynamischen Inhalten ist: Solange ein Server den Content kleiner verpackt, wird dem User nichts angezeigt. Erst dann, wenn die Komprimierung beendet ist, werden die betreffenden Daten an die Anzeige ausgeliefert. Umso besser eine Komprimierung ist, desto länger wird sie dauern. Auch bei eher geringen Komprimierungsraten wird die dynamische Kompression in der Performance bereits eingeschränkt. Statische Inhalte, die bereits fertig komprimiert vorliegen, werden bei User-Anfragen direkt ausgeliefert.
Brotli bringt daher bei statischen Inhalten mehr deutlich, wenn sein Algorithmus dahingehend richtig konfiguriert wurde. Bei dem dynamischen Inhalt dagegen bevorzugen viele Webmaster GZIP.

d.)Nicht jeder Browser unterstützt Brotli

NGINX und Apache (ab der Version 2.5) unterstützen Brotli. Es sind aber noch nicht alle Browser dabei mit Brotli zu arbeiten. Das Verfahren funktioniert zur Zeit in den Browsern, die wir hier aufführen:

Chrome ab Version 50
Firefox ab Version 44
Opera ab Version 36
Edge ab Version 15 – April 2017
Android Browser ab Version 56
Safari ab der Version 11

Nutzer die den Internet Explorer einsetzen müssen zur Zeit noch auf Brotli verzichten. Die Inhalte werden jedoch auch an die User des Internet Explorers ausgeliefert. Weil hier sich automatisch GZIP einschaltet. Sie brauchen also nicht zu befürchten, dass die Besucher in Safari und im IE nichts mehr sehen können.

In Deutschland sind ca. 60% des Marktes mit Chrome und Firefox abgedeckt, Sie können also davon ausgehen, dass ein großer Teil der Besucher einer Webseite bereits von Brotli profitiert.

Fazit

Mit Brotli ist es möglich geworden Speicherplatz zu sparen, Webseiten schneller auszuliefern und deren Performance zu steigern. Die Vorteile von Brotli liegen auf der Hand, wenn er auf einem Server standardmäßig eingebaut wurde.
Brotli und Pagespeed sind von Chrome. Pagespeed ist zudem ein wichtiger Faktor. Da es viele Methoden gibt, wie die Performance einer Webseite optimiert werden kann. Ein bedeutender Ansatz hierbei ist die Komprimierung. Es gibt einige verschiedene Komprimierungsverfahren, von denen das bekannteste Verfahren GZIP ist. Es gibt aber auch einen neuen von Google entwickelten Algorithmus genannt Brotli, der im Kommen ist.
Der Hintergrund von Brotli ist Webseiten schneller werden zu lassen. Bei einer Komprimierung mit bestimmten Verfahren werden die Dateigrößen so gut wie möglich verkleinert. Die sich daraus ergebende “Verkleinerung” führt zu kürzeren Übertragungszeiten. Daten werden verdichtet und auch verkürzt, damit sie weniger Speicherplatz benötigen.

1993 wurde mit der Einführung von Deflate auch GZIP entwickelt und ist heute bei HTTP-Übertragungen Standard der Komprimierungen. Google entwickelte dann einen eigenen Algorithmus mit dem Namen Zopfli. Dieses Verfahren funktioniert so ähnlich wie Deflate, komprimiert jedoch besser als GZIP. 2015 hat Google den neuen Algorithmus zur Komprimierung als Open Source entwickelt und den Brotli präsentiert.

Vorteile von Brotli

Brötli hat eine 20 bis 26 % höhere Kompressionsrate als der Zopfli. Er bietet 25 % mehr an Einsparung bei den HTML-Seiten, 17 % bei Java Skript und 20 % bei den CSS als GZIP. Brötli wird von den Servern NGINX und Apache (ab Version 2.5) unterstützt und er funktioniert besonders gut bei statischen Inhalten.

Nachteile von Brotli

Brötli ist nicht Deflate-kompatibel. Seine genaue Konfiguration ist besonders wichtig, ansonsten kann keine bessere Kompressionsrate erzielt werden als mit GZIP. Die genaue Konfiguration ist daher so wichtig, weil Brotli sonst Schwierigkeiten hat und dynamische Inhalte nicht komprimieren kann. Brotli funktioniert lediglich unter HTTPS.