So wird das deutsche WordPress ab Version 3.4 gravierend schneller

Datum

Die deutsche Spracheinstellung kostet WordPress teilweise im Vergleich zur englischen Variante. Die Hauptursache ist die aufwendige und speicher-fressende Übersetzungsbibliothek, die WordPress bei jedem Seitenaufruf abarbeiten muss, um die originalen englischen Texte in ihr deutsches Gegenstück zu übersetzen.

Dazu wird der Webserver durch eine träge in PHP geschriebene Nachahmung von Funktionen gequält, die in vielen Fällen bereits als schneller C-Code im Betriebssystem des Webservers vorhanden sind – die sogenannte gettext-Bibliothek.

Langsames WordPress als Resultat von „günstigem“ Webspace

Kann das deutsche WordPress auf diese „nativen“ C-Funktionen zurückgreifen, reduziert sich der Übersetzungs-Overhead auf schlanke vier Prozent. Gleichzeitig sinkt der Hauptspeicher-Verbrauch des Webservers, sodass als Konsequenz WordPress auch wieder auf billigeren Webhosting-Paketen mit etwas niedrigerem memory_limit laufen könnte. Es gibt ja immer noch günstige Webspace-Angebote, bei dem der Hoster dieses Speicherlimit für PHP auf asketische 32 MB gesetzt hat.

Und beim Webspace-Anbieter liegt auch in Zukunft „der Hund begraben“: Die gettext-Erweiterung für PHP ist ein optionaler Bestandteil, den der Webhoster bereitstellen muss. Nicht auf jedem Webspace ist PHP mit dieser schnellen Extension eingerichtet, und in diesen Fällen wird sich an der Geschwindigkeit wahrscheinlich auch in Zukunft nichts ändern.

Licht → Tunnel

Für Nutzer aller anderen Webspace-Angebote ist Licht am Ende des Tunnels zu erkennen. Beim WordPress-Team ist ein Patch eingetrudelt, der die im Betriebssystem eingebauten schnellen gettext-Funktionen in WordPress integriert, und Andrew Nacin hat vorsichtig signalisiert, dass dieser Patch in die Version 3.4 eingearbeitet werden könnte.

Leider zeigt WordPress nirgendwo im Dashboard an, ob die schnelle oder die langsame Variante der Übersetzungsbibliothek genutzt wird – die Auswahl erfolgt vollständig ohne Eingriffsmöglichkeit für den Anwender, indem die vorhandenen Fähigkeiten (oder eben auch Unfähigkeiten) des Webservers benutzt werden.

Ein Diagnose-Plugin

Ich habe darum das Plugin Native gettext diagnosis geschrieben, das sich als zusätzlicher Eintrag im Menü „Werkzeuge“ einnistet und eine Reihe von Tests durchführt.

Ist die PHP-Erweiterung „gettext“ geladen und das Ergebnis des Tests „WordPress kann das locale setzen“ ein „Ja“, kann WordPress zumindest nach dem derzeitigen Stand der Entwicklung in Version 3.4 schneller werden.

Das Plugin funktioniert auch ab WordPress 3.2 und kann daher schon jetzt benutzt werden, um festzustellen, ob der eigene Webspace mit WordPress 3.4 schneller oder langsam arbeiten wird.

Mein Tipp: „Native gettext diagnosis“ installieren, den Menüpunkt „Werkzeuge → Gettext-Diagnose“ aufrufen und bei negativem Resultat entweder den eigenen Webhoster kontaktieren oder schlimmstenfalls den Webspace-Anbieter wechseln.

Meine eigenen Tests zeigen, dass zum Beispiel Host Europe, Uberspace und Dreamhost die schnelle gettext-Extension anbieten, während auf Windows basierende Hoster da leider oft passen müssen.


Kategorien TalkPress