Wohl die meisten Online-Händler, zumindest die Branchengrößen, dürften die Optimierung der Kundenerfahrung inzwischen auf der Agenda haben. Ein sauberer und einfacher Bestellprozess, viele Bezahlverfahren und natürlich ein reibungsloses Fulfillment gehören dazu. Ein Aspekt wird aber viel zu häufig vernachlässigt: die Geschwindigkeit des Gesamtsystems.

Der Page Speed Test von Google ist unerbittlich
Der Page Speed Test von Google ist unerbittlich

Ich habe ein Herz gerade auch für die kleineren Händler. Und deswegen versuche ich auch, sofern es sich anbietet, Produkte auch abseits der großen Marktplätze und Branchendickschiffe zu bestellen. Aber oft genug lande ich dann doch wieder beim Versender mit dem “A”. Viele von Mittelständlern und Kleinunternehmen betriebene Shops sind einfach unsäglich schlecht. Das fängt bei der Präsentation der Produkte an, setzt sich bei mangelnder Umsetzung technischer Standards (Stichwort Mobile) fort und endet eben bei der Geschwindigkeit. Dabei gehöre ich noch zu den Jahrgängen, die warten gelernt hat. Schließlich fanden die ersten Online-Erfahrungen mit seinerzeit sensationell schnellen 2400 Baud statt. Das sieht bei der Generation Y oder meinen Kids anders aus. Hier muss immer alles gleich sofort sichtbar sein. Oder es ist kaputt. Und in Sachen Geschwindigkeit haben viele Shops extremen Nachholbedarf.

Die Basis - ins Hosting investieren

Wer bei der Auswahl seines Hosters auf den Preis schielt, ist selbst schuld. Natürlich gibt es Anbieter, die für einen knappen Zehner im Monat Webspace anbieten. Darin enthalten ist dann auch oft ein Mietshop. Nur darf der Händler sich dann nicht wundern, wenn der Shop alles andere als schnell ist. Die Anbindung des Hosters an das Internet spielt da erst einmal eine nachgelagerte Rolle. Auf dem Server spielt die Musik. Oder eben nicht. Denn Anwendungen wie Magento erfordern schon Leistung. Und wenn sich auf dem gleichen Server dann 50 oder 100 andere Webseiten die Rechenleistung teilen müssen, läuft es nicht rund.

Shared-Hosting Angebote sind für den Aufbau eines Shops, der auch größere Kundenströme versorgen soll, eher nicht geeignet.

Die Shopinstallation muss sich dort zu viele Ressourcen mit anderen Angeboten teilen. Durch die gleichmäßige Verteilung von Prozessorzeit und der beschränkten Größe des Arbeitsspeichers fahren Händler hier sprichwörtlich mit angezogener Handbremse. Es gibt zwar Shared-Angebote, bei der die Zahl der parallelen Kunden reduziert ist, die liegen preislich dann aber nicht weit entfernt von sogenannten Dedicated Servern. Hier läuft dann der Shop auf einem bestimmten Server und flexibler in der Konfiguration ist der Händler dann auch noch.

Empfehlenswert: Spezialanbieter nutzen

Jedes Shopsystem ist anders und es erfordert schon etwas Erfahrung, um zu wissen, an welchen Stellschrauben man tief in der Server-Konfiguration drehen muss, um die optimale Geschwindigkeit zu erreichen. Deswegen ist es ratsam, sich für einen Provider zu entscheiden, der explizit Angebote für das verwendete Shopsysteme im Portfolio hat. Oder sich einen Dienstleister zu suchen, der nachweislich Expertise beim Shopsystem besitzt. Spezialagenturen und Anbieter helfen im Zweifel auch beim Umzug des kompletten Systems auf einen neuen Server.

Bilder, Videos & Co

Es gibt kaum einen Bereich, in dem so viele Fehler gemacht werden, wie beim Einsatz von Grafiken. Der Grund mag Unkenntnis oder auch Sorglosigkeit sein, schließlich haben die Nutzer doch alle einen DSL-Anschluss zu Hause, oder? Vergessen wird dabei einerseits, dass ein nicht unwesentlicher Teil der Kundschaft zwar schon einen (eigentlich schnellen) Anschluss besitzt, aber längst nicht überall die volle Bandbreite ankommt. Gerade in ländlichen Regionen sind Anschlüsse, die lediglich netto 1–2 Mbit besitzen, keine Seltenheit. Aus Sicht von Google spielt das ohnehin keine Rolle, hier zählt nur nackte Geschwindigkeit.

Achten Sie also auf die berühmten Grundlagen und setzen Sie nur optimierte und reduzierte Grafiken im Shop ein. Eine geringere Auflösung und Reduktion der Farben spart enorm Datenvolumen. Die notwendigen Handgriffe in einer einfachen Bildbearbeitung (z.B. Irfan View für Windows) sind gar nicht schwer zu erlernen. Die Bearbeitung des Materials kostet zwar etwas Arbeit, aber mit der Schaufensterdekoration geben sich stationäre Händler ja auch Mühe.

Je weniger der Shop-Server mit der Auslieferung der Grafiken beschäftigt ist, umso besser. Die Seiten bauen sich schneller auf und die Anfragen der Kunden werden rascher bearbeitet. Eine Möglichkeit, dies nicht weiter zu beschleunigen, besteht in der Auslagerung der Grafiken. Im einfachen Fall wird auf der gleichen physikalischen Maschine eine weitere Serverinstanz gestartet. Diese ist dann über eine Subdomain, zum Beispiel bilder.meinshop.de erreichbar. In der gleichen Zeiteinheit können mehr Anfragen bearbeitet werden. Das System wird also schneller. Allerdings ist es nicht immer ganz leicht, den Überblick über die Medien zu behalten. Was lagert nun gerade wo?

Einen Schritt weiter geht die Auslagerung auf einen speziellen Server. Hier können Sie auf Spezialanbieter zurückgreifen, die Mediendateien dank schneller Systeme und schneller Anbindung ausliefern. Der Einsatz eines solchen Content Delivery Networks (CDN) beflügelt den Shop förmlich und kostet auch nicht die Welt. Amazon bietet beispielsweise mit Cloudfront einen recht unkomplizierten Ansatz. Vorteil: Die Inhalte können parallel geladen werden und die Anfragen belasten auch nicht das eigene System.

Introduction to Amazon CloudFront

Wenn Grafiken vom Nutzer gezoomt oder gedreht werden können, ist das Auslagern der entsprechenden Dateien in ein CDN ebenfalls sehr zu empfehlen.

Statt Grafiken mehr CSS nutzen

Die klassischen Schalter mit der Aufschrift “Jetzt kaufen” oder “Warenkorb” müssen schon lange nicht mehr als Grafik gestaltet werden. Dafür gibt es CSS3, das viele solcher Elemente darstellen kann. Das bringt zwar nur einen minimalen Geschwindigkeitsgewinn, aber die CSS-Buttons skalieren wenigstens richtig und werden auf Handy-Displays nicht mikroskopisch klein, wie bei vielen Shops, die den “Trend” Mobile offenbar verschlafen haben.

Caches einsetzen und Code komprimieren

Es versteht sich fast von selbst, dass der Shop mit eingeschaltetem Cache betrieben werden sollte, oder? Logos und andere wiederkehrende Elemente müssen dann nur einmal übertragen werden. Magento und andere Systeme setzen für die Optik und Funktionalität des Shops eine Vielzahl an verschiedenen Javascript- und CSS-Dateien ein. Lesen Sie in den Dokumentationen nach, wie Sie die Dateien serverseitig komprimieren können. Das kann über ein Cache-Plug-in erfolgen oder auch (je nach System) über eine interne Funktion.

Ladeverhalten kontrollieren und Code optimieren

Die Abhängigkeit von Elementen beim Laden im Wasserfall-Diagramm
Die Abhängigkeit von Elementen beim Laden im Wasserfall-Diagramm
Okay, an der Stelle sind die meisten Händler wohl raus aus dem Thema. Deswegen kann die Zusammenarbeit mit einem Spezialisten auch so wertvoll sein. Denn durch das geschickte Laden von Elementen kann sich die Seite viel schneller aufbauen. Mit einer Optimierung, die zuerst die Elemente lädt, die sich im unmittelbaren Sichtfeld des Nutzers befinden und erst danach die weiteren Elemente der Seite, wird der Nutzer schneller bedient.

Speed im Hintergrund gewinnen

Tief drunten im Maschinenraum des Shops gibt es ebenfalls reichlich zu tun. Dies beginnt mit der Aktivierung der Kompression aller vom Web-Server ausgelieferten Dateien. Im Falle von Apache genügen wenige Zeilen Code in der Datei “htaccess”.

Es kann sich auch durchaus lohnen, sich mit dem PageSpeed Modul von Google zu beschäftigen, um es zu testen. Es handelt sich dabei um Erweiterungen für den Webserver, die ganz automatisch die Geschwindigkeit bei der Auslieferung von Dateien vergrößern. Die Installation ist aber nichts für Laien.

In der PHP-Ini-Datei, die Grundkonfiguration für die Skriptsprache PHP, die die Basis für viele Shop- und Blog-Systeme bildet, kann der zur Verfügung stehende Speicher limitiert werden. Meist ist dieser zu gering gewählt. Je mehr Speicher über die Variable “php_value memory_limit” zur Benutzung freigegeben wurde, umso besser.

Die Datenbank sollte regelmäßig geprüft und optimiert werden
Die Datenbank sollte regelmäßig geprüft und optimiert werden
Ohne Datenbank kein Shop. Und bei der Datenbank gibt ebenfalls mehrere Ansatzpunkte, um mehr Geschwindigkeit herauszuholen. Zum einen gibt es auch hier einen Cache für Datenbankabfragen. Dieser sollte nach Möglichkeit vergrößert werden. Für die Erzeugung von Kategorien- und anderen Stammseiten werden hier pro Nutzer immer die gleichen Anfragen an die Datenbank gestellt. Das kann durch das Caching natürlich optimiert werden. Zum anderen muss die Datenbank regelmäßig gewartet und optimiert werden.

Shopsuche beschleunigen

Stiefmütterlich wird in vielen kleineren Shopinstallationen die Suchfunktion behandelt. Das ist gleich doppelt sträflich. Denn einerseits hilft eine optimierte Suchfunktion dem Kunden dabei, doch noch den Artikel zu finden, nach dem er sucht. Stichworte: Verwandte Suchbegriffe, Schreibweisen, mehrdeutig Artikelbezeichnungen. Zum anderen warten Kunden ungern auf den Verkäufer im Geschäft, sie warten auch ungern auf das Ergebnis einer Anfrage.

Wer nicht gleich in kommerzielle Lösungen investieren will oder kann, sollte zumindest Volltextsuchen wie Sphinx nutzen, die deutlich schneller arbeiten, als einfache Suchfunktionen. Auch die Plug-in-Verzeichnisse von Shoplösungen (z.B. Magento) bieten eine Auswahl an Programmen, die es sich lohnt, auszuprobieren.

Externe Anbindungen überprüfen

Nun kommt sie doch noch mal: Die Anbindung des Servers an das Internet. Hat der Kunde seine Waren in den Warenkorb gelegt, werden die Daten an den Payment Service Provider weitergereicht. Haben Sie nach vorne alles optimiert und gleichzeitig auch die Maschine getunt, können von vorn die Kundenanfragen wie durch einen Feuerwehrschlauch einlaufen. Diesen Effekt wird dann natürlich konterkariert, wenn die Anbindung an externe Systeme einem Gartenschlauch ähnelt. Ein permanentes Benchmarking schärft den Blick auf Flaschenhälse.

In diesem Sinne: erfolgreiches Optimieren!

Weitere Artikel zum Thema