CMS Performance (Teil 8)

Dieser Artikel ist Teil der Content Management System-Serie.

Nachdem es im letzten Artikel um Templates ging, befassen wir uns dieses Mal mit der Performance von diversen Lösungen.

Warum die Performance so wichtig ist

Sicher ist dir aufgefallen, dass ich einem scheinbar kleinen Aspekt gleich einen ganzen Artikel in dieser Serie widme.

Das hat auch seinen Grund. Denn große Content Management Systeme, meistens gerade die, die meisten und umfangreichsten Features beinhalten, benötigen häufig länger beim Seitenaufbau als „kleinere“ Lösungen.

Für den Besucher ist es alles andere als schön auf die Website einige Sekunden länger zu warten als üblich. Schließlich ist die durchschnittliche Zeit, die ein Besucher auf einer Website verbringt ohnehin schon ziemlich gering.

Außerdem soll es auch einer der Faktoren sein, die Google für die Rankings verwendet. Eine schnelle Website kann also deutlich mehr und aktivere Besucher bringen.

Faktoren für die Performance

Je weniger „Extras“ eine CMS-Homepage beinhaltet, desto schneller lädt sie in der Regel. Hier habe ich einmal die wichtigsten Faktoren aufgelistet:

  • Funktionen des CMS
    Allgemein ist es erst einmal wichtig, wie viele Funktionen das CMS beinhaltet, die eventuell gar nicht genutzt und nicht zwingend gebraucht werden, trotzdem aber beim Seitenaufbau für negative Auswirkungen auf die Geschwindigkeit sorgen.
  • Kern & Programmierung
    Des Weiteren sind ein schneller Kernteil und ein sauberer Code eine gute Voraussetzung für eine angemessene Seitenperformance.
  • Aktive Plugins
    Dieser Punkt ist insofern interessant, weil du hier etwas verbessern kannst, dazu aber später mehr. Plugins können starke Ressourcenfresser sein, wenn sie unsauber entwickelt wurden, oder falsch eingestellt sind.
  • Das Theme
    Auch das Theme kann durch zahlreiche Funktionen und Einstellungsmöglichkeiten die Performance in den Keller ziehen.
  • Externe Anwendungen
    Wenn du auf externe Anwendungen zurückgreifst, die nicht asynchron geladen werden oder geladen werden können, kann auch ein externes Statistik Tool oder ein Button aus einem Social Network dafür sorgen, dass die Website langsamer lädt.
  • Caching
    Alle Content Management Systeme generieren die Websites dynamisch, anders geht es einfach nicht. Hier kann auch die Schwachstelle liegen, da jedes Mal z.T. auch überflüssige Daten neu generiert werden. Um die Performance durch Caching zu steigern, gibt es ein breites Repertoire an Möglichkeiten.

Du siehst also, dass es einige Faktoren gibt, die die Performance beeinflussen. Also auch eine Menge Optimierungspotenzial? Damit werde ich mich jetzt beschäftigen.

Performance optimieren

Was tut man wenn man merkt, dass eine Website eindeutig zu langsam ist? Man optimiert sie.

Das geht auch bei Websites, die mit einem Content Management System erstellt wurden. Das meiste Optimierungspotenzial besteht allerdings, wenn viele Änderungen an der ursprünglichen Version (z.B. durch Erweiterungen) vorgenommen wurden.

Ich habe diverse Möglichkeiten einmal gesammelt und möchte sie dir nun vorstellen:

  • Plugins aufräumen
    Jedes der in dieser Serie vorgestellten CMS bietet auch Erweiterungen an, die zwar mehr Funktionen mitbringen, gleichzeitig aber auch für Geschwindigkeitsverlust sorgen können.Hier hilft es, nicht zu viele und wirklich nur die nötigsten Erweiterungen zu verwenden. Noch viel wichtiger ist jedoch, dass die Plugins vernünftig entwickelt und konfiguriert werden.

    Sollte deine Website auffällig langsam sein, so solltest die Plugins einzeln testen um herauszufinden, welches Plugin der Übeltäter ist. Dieses sollte dann entfernt, anders eingestellt oder durch eine Alternative ersetzt werden.

  • Theme überprüfen
    Man stößt selten auf wirklich „schlechte“ Themes, daher wird dieser Punkt den wenigsten helfen. Doch einen Versuch ist es wert.Auch das Theme kann durch Zusatzfunktionen und zahlreiche Einstellungsmöglichkeiten Performance verschenken. Wer mit PHP etwas vertraut ist, sollte Verbesserungen auch selbst hinbekommen.
  • Browser Caching
    Hier kommt es ganz auf das jeweilige CMS an, eventuell gibt es dort die Möglichkeit, dies im Adminbereich einzustellen oder man nimmt die Änderungen direkt in der .htaccess vor.Wie das geht, habe ich hier beschrieben.
  • Caching Plugin
    Neben dem Client-, also Browsercache gibt es auch noch den Servercache. Dies eignet sich bei dynamischen Inhalten (also in diesem Fall PHP Dateien), die sich Content Management Systeme zur Nutze machen.Das Plugin speichert dann eine gecachte Version der jeweiligen Seite und zeigt diese solange an bis zum Beispiel ein neuer Kommentar geschrieben wird.

    Dies kann allerdings auch Nachteile haben – zum Beispiel bei einem AdServer auf PHP-Basis. In so einem Fall würde dauerhaft die gleiche Werbung angezeigt werden.

    Die besten Caching Plugins bieten häufig auch hier Möglichkeiten.

  • Asynchrone Lösungen verwenden
    Nehmen wir mal an, du verwendest Google Analytics. Würde es „normal“ aufgerufen werden, würde die Ladezeit etwas länger wirken und während der Zeit in der das Skript ausgeführt wird, kommt für den Nutzer nicht neues auf den Bildschirm.Das heißt man könnte das Skript auch später im Hintergrund ausführen. Dafür gibt es dann den asynchronen Code, der „unsichtbar“ ausgeführt wird, sobald die Website – so wie es für den Nutzer aussieht – schon fertig geladen ist.
  • Bilddateien verkleinern
    Die meisten CM-Systeme sind in der Lage riesige Bilddateien beim Upload auf eine angemessene Größe zu bringen. Dies kann einiges an Ladezeit einsparen.Sollte dein CMS dies nicht tun, schau dir doch einmal den Massen Bild Editor an. Damit kannst du auch mehrere Bilder schnell anpassen. Dies gilt auch für das eigene Theme.
  • Datenbank optimieren
    Erst rate ich noch dazu, möglichst wenig Plugins zu verwenden und jetzt rate ich eines zu nutzen, welches die Datenbank optimiert.Große Geschwindigkeitsverluste können dadurch nur selten oder bei einem CMS behoben werden, welches nicht durchgehend sinnvoll mit der Datenbank arbeitet. Doch häufig entsteht in jedem Fall ein Daten-Überhang in der Datenbank, der mit einer solchen Erweiterung bereinigt werden kann.
  • Das passende CMS
    Kommen wir zum alles entscheidenden Punkt 😉 Dem passenden CMS. Jetzt werde ich dir nämlich etwas ganz neues verraten: Du solltest dir genau überlegen welches Content Management System du verwenden willst.Solltest du z.B. keine besonderen Funktionen nutzen, sondern dir einfach nur ein schlichtes CMS wünschen, dann würde ich dir davon abraten das recht große WordPress zu nutzen.

Fazit zur CMS Performance

Mit wenig Arbeit kann man schon viel erreichen. Ebenso wichtig ist aber, dass du das Content Management System verwendest, was deinen Funktionsbedarf deckt – nicht mehr und nicht weniger.

Dann klappt es auch mit der Performance des Systems.