Ladezeiten und Performance Boosting

Es blitzt und blinkt, hier läuft eine Animation und dort noch eine Bannerwerbung. Manche Webseiten lassen erkennen, dass der Designer und/oder der Betreiber von den Möglichkeiten, die zum Beispiel Flash bietet, mehr als angetan sind. Dabei haben sie aber leider aus den Augen verloren, dass stark überladene Webseiten eine lange Ladezeit haben. Das ist nicht nur für viele User ärgerlich, sondern wird auch von den Suchmaschinen entsprechend bewertet.

Laut dem statistischen Bundesamt verfügen inzwischen 77 Prozent der privaten Haushalte über Internet. Fast alle – nämlich 93 Prozent – surfen mit einem Breitbandanschluss. Das sind imposante Zahlen. Die User haben sich aber bestimmt keinen Breitbandanschluss zugelegt, um dann wegen langer Ladezeiten doch wieder vor einem weißen Bildschirm zu sitzen. Sie wollen, dass eine Seite schnell geladen wird, daher ist die Ladezeit auch für Suchmaschinen ein interessantes Ranking-Kriterium.

Wenn eine Seite selbst bei einem DSL-Anschluss länger als zehn Sekunden lädt, kann damit etwas nicht in Ordnung sein. Viele User warten dann nicht länger und brechen den Ladevorgang ab. Das ist allein schon ärgerlich, wenn sie die Seite direkt aufrufen. Bestenfalls versucht es der User später noch einmal, da er vielleicht von temporären Problemen auf der Seite ausgeht. Gut, tagsüber und am frühen Abend sind auch mehr Leute online, so dass es vielleicht auch zu einem Kapazitätsproblem kommen kann. Wenn die Seite aber nun auch früh morgens oder am späten Abend lange lädt, ist sie wahrscheinlich kaputt oder etwas anderes ist nicht in Ordnung. Der User ist jedenfalls weg und kommt auch so schnell nicht wieder. Scheitert der Seitenaufruf über die Trefferliste einer Suchmaschine an der Ladezeit, ist das gleich doppelt ärgerlich. Zum einen ist der User weg, zum anderen erhöht das die Bounce-Rate der Webseite. Das ist ein weiterer, nicht zu unterschätzender Ranking-Faktor.

Wie kann man die Ladezeiten einer Website verbessern?

Es gibt verschiedene Ansatzpunkte, um die Performance einer Webseite zu verbessern. Als erstes muss ich immer an Grafiken denken.

Grafiken

Es macht nichts, wenn viele Grafiken auf einer Webseite eingebunden werden, solange die Dateigröße stimmt. Ab 20 bis 30 kByte sollte aber Schluss sein. Größere Dateien braucht man auf normalen Webseiten nicht, ein Monitor hat eh nur eine Auflösung von 72 dpi. Wenn man also Grafiken mit höherer Auflösung in seine Seite einbaut, ist das völlig sinnfrei (außer es handelt sich um eine Bildagentur wie zum Beispiel fotolia.de), verlängert den Seitenaufbau teilweise aber enorm.

Die Browser haben auch Schwierigkeiten, wenn sich eine Seite aus vielen (kleinen) Bildern zusammensetzt. Für jedes Bild müssen sie eine Verbindung zum Webserver aufbauen und das Bild herunterladen. Die Anzahl der möglichen Verbindungen ist aber begrenzt. Für dieses Problem gibt es eine recht elegante Lösung: CSS-Sprites. Damit können mehrere Bilder zu einem großen Bild zusammengefügt werden. Die Positionierung der einzelnen kleinen Bilder erfolgt dann über das CSS. So baut der Browser aber für mehrere Bilder nur eine Verbindung zum Server auf.

Quellcode optimieren

Auch der Quellcode selbst kann optimiert werden. CSS-Angaben gehören in eine eigene CSS-Datei, nicht in jede einzelne Seite eines Webportals. So muss der Browser die Datei nur einmal laden und nicht jede Menge Style-Angaben nacheinander interpretieren. Das gilt auch für Scripte. Diese können ebenfalls in einer eigenen Datei verwaltet werden. So wird aus 20 bis 500 Zeilen Java-Script in jeder Seite nur noch eine Zeile, die das Script bei Bedarf aufruft. Zusätzlich kann man die Dateien auch noch mit gzip komprimieren. Dadurch sinkt die Dateigröße der vom Server verschickten Dateien. Das wirkt sich nicht nur auf die Geschwindigkeit der Seite aus, sondern spart auch noch Traffic.

Caching

Häufig besuchte Seiten einer Website kann man cachen. Das ist besonders für dynamische Webseiten interessant. So muss die Seite nur einmal vom Server berechnet werden. Das Ergebnis wandert in den Cache. Wird die Webseite nun weiterhin aufgerufen, muss der Server die Seite nicht neu berechnen. Statt dessen liefert er einfach die Seite aus, die im Zwischenspeicher abgelegt ist. Das verringert die Ladezeiten ganz erheblich.

Proxies

Wenn der Server im Laufe der Zeit zu klein oder zu alt wird, nimmt man meistens einen Neuen, der schneller und größer ist. Manche veraltete Strukturen lassen sich aber nicht so einfach an neue Standards anpassen. Das sollte zwar eigentlich wegen der Abwärtskompatibilität kein Problem sein, kommt aber in der Praxis immer wieder vor. Mit der Zeit haben sich manche Lösungen eben als Sackgasse erwiesen, die dann nicht weiter entwickelt wurden.

In einem solchen Fall kann man mit Proxies viel erreichen. Wenn der alte Server aufgrund der Menge an Anfragen zu lange braucht, kann man ein paar Proxies vorschalten. Diese sind im Grunde größere Caches. Sie leiten die Anfrage nur einmal an den Server weiter und legen die Seite dann in ihren Cache. Weitere Anfragen nach dieser Seite werden dann direkt vom Proxie beantwortet ohne den Server zu bemühen. So wird der alte Server entlastet und die Ladezeit der Seite verringert.

Datenbankkonfiguration überprüfen

Viele Internetseiten werden mittlerweile dynamisch erzeugt. Das heißt sie werden zur Laufzeit aus einer oder mehreren Datenbanken zusammengefügt. Eine lange Ladezeit ist häufig das Ergebnis einer falschen Datenbankkonfiguration. Wenn zum Beispiel nur eine stark begrenzte Anzahl an Datenbankverbindungen möglich sein soll, kann der Quellcode noch so schlank sein. Falls alle Verbindungen zur Datenbank belegt sind, muss die Anfrage und damit auch der Seitenaufbau warten, bis wieder eine Verbindung frei geworden ist.

Es gibt noch ein paar weitere Möglichkeiten, wie man die Ladezeiten einer Webseite verkürzen kann. Die Wichtigsten habe ich hier vorgestellt. Falls ich welche nicht erwähnt habe, bitte ich um einen entsprechenden Kommentar. Wenn Sie wissen möchten, ob Ihre Webseite schnell ist, können Sie das ganz einfach selbst überprüfen. Neben vielen Anbietern und Tools, stellt auch Google mit dem Page Speed Modul eine Browsererweiterung zur Verfügung, mit der Sie Ihre Webseite testen können.

Das könnte dir auch gefallen

Kommentar hinterlassen

Deine E-Mail Adresse wird nicht veröffentlicht.

3 Kommentare
16.01.2012

Die Komprimierung der ausgelieferten Website bringt auch noch etwas.

Kann man serverseitig über das Modul „mod_deflate“ und den entsprechenden Eintrag in der .htaccess ziemlich einfach erledigen.

Komprimiert werden dann z.B. html-, text-, css-, xml- und javasript-Elemente.