Shopware Performance-Optimierung

Shopware Performance-Optimierung

Der Wettbewerb zwischen Onlinehändlern ist größer denn je. Händler stehen vor der Herausforderung, sich mit ihren Onlineshops von der Masse abzugrenzen. In Zeiten, in denen die Produktvielfalt, Individualität und Emotionalität immer mehr zum Selbstverständnis werden, wird ein Erfolgsfaktor vernachlässigt: die Performance des Shops. Ender Özgür, Head of Software Factories bei Neofonie, beschreibt den Faktor “Performance” als Mittel im Kampf um den Onlineshopper am Beispiel von Shopware.

Was Performance wirklich für den E-Commerce bedeutet

Performance betrachtet die Geschwindigkeit mit der beispielsweise ein Onlineshop geräteunabhängig lädt. “Je schneller, desto besser”, lautet die Devise. Für den Kunden ist die Performance entscheidend: Wird der potenzielle Kunden beim ersten Websitebesuch mit unnötigen Ladezeiten auf die Geduldsprobe gestellt, ist er weg, bevor er überhaupt gewonnen werden konnte. Bei schlechter Performance steht einem rasanten Abstieg im Google-Ranking nichts mehr im Wege, folglich sinken die Conversions und Onlineshops kämpfen mit Umsatzzielen. Eine fortwährende Abwärtsspirale auf dem Weg zur Irrelevanz! Wenig hilfreich ist dabei der derzeitige Trend, Shops mit Plugins zu überladen, auch wenn sie viele nützliche Funktionen bieten.

Tool-Tipp

Beklagen Onlinehändler Einbrüche im E-Commerce-Geschäft, sollten sie zunächst die Performance eigenständig testen. Hilfreiche Tools sind hier Google Page SpeedWEBPAGETEST oder Pingdom Website Speed Test. Für eine Bulk-Analyse von mehreren Seiten eignet sich insbesondere der Bulk PageSpeed Test.

Emotional-Commerce braucht eine Performance-Betrachtung

Angetrieben durch Storytelling und Emotionen im Onlinehandel, bieten Shops vielfältige Informationen in Form unterschiedlichster Medienformate wie Bilder, Videos oder interaktive Grafiken, um den Kunden zu begeistern. Folglich steigen die Anforderungen an die Rechenleistung und im schlechtesten Fall die Performance, die Hochverfügbarkeit und die Skalierbarkeit des Systems tendenziell vermindert.

Die große Herausforderung besteht für Shop-Betreiber darin, das steigende Produktangebot und Funktionsangebot hochverfügbar und skalierbar darzustellen. Für Onlineshops bedeutet Hochverfügbarkeit, dass der Besuch oder der Kaufvorgang unterbrechungsfrei durchgeführt werden kann. Das betritt den Fall, wenn z.B. Wartungsarbeiten durchgeführt, neue Funktionen released werden oder ein Server abstürzt. Schafft es ein Onlineshop die Skalierbarkeit zu optimieren, zeigen sich weitere Vorteile:

  • Schnelle Shop-Antwortzeiten trotz massiver Systemnutzung, z.B. während laufender Online-Kampagnen
  • Expansion in andere Länder wird vereinfacht
  • Produktsortiment kann schnell ausgebaut werden
  • Schnellere Produktsuchen, z.B. in dem der Suchserver ausgelagert wird
  • Schnellere Produktvorschläge und
  • die Bestellmenge/Durchsatz in kürzester Zeit optimieren

Das Zusammenspiel aus Hochverfügbarkeit und Skalierbarkeit ist die Basis für performante Webseiten und Onlineshops.

Performance-Beispiel: Die Online-Apotheke eurapon nimmt Fahrt auf

Eine repräsentative Befragung der Bitkom Research im Auftrag des Digitalverbands Bitkom bestätigt: Knapp 42 Prozent der Deutschen bestellen ihre Medikamente in Online-Apotheken. Eine der führenden Online-Apotheken eurapon hat mehr als 100.000 Produkte im Angebot. Neben der Produktvielfalt müssen sie eine hohe Zahl an Seitenaufrufen bewältigen, sowie eine stabile, performante Verarbeitung der Bestellungen garantieren.

Starsteite von eurapon.de auf mehreren Devices
Quelle: eurapon / Neofonie

Neofonie hat hierzu die Online-Apotheke eurapon zu einem skalierbaren Shop ausgebaut, um dessen Dienste hochverfügbar und performant zu machen.

Step 1: Performance-Analyse

Grundsätzlich wird im Vorfeld empfohlen zunächst einmal zu verstehen, an welcher Stelle Performance-Bottlenecks auftreten bzw. erwartet werden (z.B. Datenbankabfragen oder Cache Hit Rate). Entsprechend gibt es dafür auch Analyse-Tools, wie beispielsweise MySQL Query Analyzer oder dem PHP Profiler Tideways. Nach der Auswertung der Messzahlen ergibt sich ein besseres Bild, an welchen Stellen im System, bzw. bei welchen Services der eigentliche Handlungsbedarf besteht.

Als Basis verwendet eurapon die Standard Shopware Architektur. Dabei unterliegen alle Varianten unterhalb der Enterprise Edition des Herstellers den gleichen Limitierungen:

  • die Zuweisungen von Services (wie z.B. Datenbank, Suche, Proxy) zu VMs verläuft statisch
  • es gibt genau eine Shopware Instanz
  • es gibt genau eine Datenbank Instanz
  • keine Möglichkeit der horizontalen Skalierung

Herausforderung

Damit waren die Herausforderungen auch recht schnell klar, nämlich von diesen Limitierungen ausgehend einen skalierbaren und hochverfügbaren Shop bereitzustellen, der auch bei regelmäßigen Marketingaktionen, die mit sehr hohem Traffic-Aufkommen verbunden sind, stabil läuft.

Von der Zahlenseite her sieht es dann wie folgt aus:

  • der Shop bietet 250.000 Artikel
  • zu den normalen Peak Zeiten außerhalb der Marketingaktionen erfolgen 200 Bestellungen pro Minute
  • diese entsprechen über 2500 Hits pro Sekunde auf dem Webserver
  • garantierte 0 Downtime, bei Software-Rollouts, Änderungen und Wartungen am System

Step 2: Optimierung der Infrastruktur

Die Lösung besteht zunächst aus zwei Schritten, nämlich die Bereitstellung einer adäquaten Infrastruktur und die Aufteilung und Anpassung der Architektur mit der Einführung weiterer Komponenten.

Damit das Gesamtsystem horizontal skalieren kann, wurde auf eine Cloud-Infrastruktur auf Basis von Docker Swarm (als Alternative zu Kubernetes) gesetzt. Dieses unterstützt die Orchestrierung von Containern und eignet sich gut für Infrastrukturprojekte mittlerer Größe. Dabei liegen innerhalb des Docker Swarm Clusters die Managementfunktionen (Verwaltung der Cluster Infrastruktur) in einer redundanten Gruppe von Swarm Manager Nodes vor und die Services laufen in sogenannten Swarm Worker Nodes, dort werden dann auch die Docker Container gestartet.

Der Cloud-Ansatz unterstützt dabei, z.B. mehrere Frontend- und Datenbank-Instanzen zu starten und liefert Infrastruktur-Features, wie beispielsweise Autorecovery und Autorestart gleich mit.

Step 3: Optimierung der System-Architektur

Im Bereich der Systemarchitektur spielen die grundlegenden Erkenntnisse aus der vorherigen Performance-Analysephase mit ein und sorgen in diesem Beispiel für:

  • eine Trennung zwischen Shopware Backend und Frontend
  • für den Einsatz einer Clusterlösung für MySQL
  • Caching-Lösungen in Form von memcached und Redis und
  • die weitere Anbindung zusätzlicher Services (DB Proxy, Traffic Limiter)

Das Shopware Backend ist eine eigene Instanz, die nur einmal gestartet wird und nicht skalieren muss. Dafür können beliebig viele Shopware Frontend Instanzen existieren, die vom Backend mit Content beliefert werden. Als Clusterlösung wurde MySQL Galera Cluster von Percona aufgrund der komfortablen Replikations-API ausgewählt.

Das bedeutet, dass jedes Einzelsystem als Docker Image File eingepackt, für den Rollout vorbereitet wird und mehrfach als Container gestartet werden kann. Die Zuweisung von Containern zu Nodes erfolgt nicht mehr statisch, sondern diese Arbeit wird von Docker Swarm über eine vorab erstellte Zielkonfiguration automatisch übernommen. Mit der Einführung von Docker Containern und Docker Swarm ändert sich auch der Deployment-Prozess dahingehend, dass man flexibler und schneller auf erforderliche Änderungen eingehen kann.

Der Einstiegspunkt einer Nutzeranfrage erfolgt in unserem Beispiel über einen klassischen Hardware-Loadbalancer, der die Last auf die verschiedenen Worker Nodes verteilt. In der zweiten Ebene, wenn es darum geht Hostnamen aufzulösen und Services anzusprechen, wird diese Arbeit vom Swarm Loadbalancer übernommen – hilfreich dafür war der Einsatz des Tools traefik.io. Lediglich bei der Kommunikation zwischen Shopware Frontend und dem Galera Cluster musste eine zusätzliche Komponente in Form eines Datenbank Proxies zwischengeschaltet werden, der im Ausnahme- oder Wartungsfall die Datenbankanfragen automatisch umleitet.

Die regelmäßig pro Quartal durchgeführten Marketingaktionen (Überraschungsbox) stellen den Onlineshop vor eine weitere Herausforderung, dieser muss nämlich einen Besucheransturm zu einer vorab kommunizierten Zeit standhalten, bis der Verkauf der limitierten Edition (2000 Stück) abgeschlossen ist. Dafür wurde ein spezieller HAProxy bereitgestellt (Traffic Limiter), der sich on-the-fly anhand der aktuellen Last steuern lässt und einen konfigurierbaren Prozentsatz der Shopbesucher durchlässt. Die verbleibenden  Besucher werden auf eine Warteseite geleitet und mit einer Session ID ausgestattet, die dazu dient den Besucher bei der nächsten Gelegenheit automatisch auf das Shopware Frontend zu lenken.

Die Trennung zwischen Shopware Backend und Frontend ist zwar ein wichtiger Schritt für die Vorbereitung auf ein skalierbares System, dies bringt jedoch weitere Fragestellungen mit sich, die gelöst werden müssen. Beispielsweise müssen die Mediendateien, die redaktionell im Backend gepflegt werden, auf die Frontend Instanzen übertragen werden, dies geschieht mit Hilfe eines rsync daemons. Darüber hinaus müssen die Caches der Frontend Instanzen mittels eines Cache Proxies aktualisiert werden, sobald ein Artikel redaktionell aktualisiert oder gelöscht wurde.

Fazit: Performante Onlineshops sind ein Muss für Shopbetreiber

Für die Konzeption und Entwicklung von performanten Onlineshops bedeutet es mehr Komplexität, der Einsatz weiterer Tools sowie ein erhöhter Mehraufwand, doch die  Vorteile überzeugen:

  • Hohe Wiederverwendbarkeit der Komponenten durch Docker Images Baukasten
  • Schnelles und einfaches Aufsetzen neuer Umgebungen
  • Einfaches Hinzufügen neuer Shopware oder Datenbank Instanzen
  • Hosting Provider unabhängig
  • Unterbrechungsfreie Wartung oder Deployment
  • Autorestart von Services
  • Hoher Automatisierungsgrad u.a. gute Unterstützung bei QA und Performance Testing

Veröffentlicht am 25. September 2018, aktualisiert am 09. Oktober 2020

Teilen auf
Ender Özgür

Ender Özgür

Ender Özgür hat Informatik an der TU Berlin studiert. Er verantwortet als Head of Software Factories bei Neofonie die moderne Umsetzung von Entwicklungsprojekten. Neofonie entwickelt individuelle, digitale Lösungen und bietet Beratung, Konzeption, Design, Entwicklung und Betrieb aus einer Hand. Zu den Kunden zählen der Wort & Bild Verlag, Audi, Leica, Rausch und Super RTL.

SAP Silver Partner Logo

Neofonie setzt auf SAP Commerce Cloud

Als Spezialist für E-Commerce Lösung hat Neofonie die Partnerschaft mit SAP ausgeweitet und ist nun auch Implementierungspartner für die SAP Commerce Plattform.

Illustration von CRM-Systemen

Neofonie hilft mit CRM-Beratung zur 360° Kundensicht

Neofonie unterstützt Sie beim Aufbau eines erfolgreichen Customer Relation Managements.

SEO in bunten Buchstaben

Webinar: Relaunch und SEO – So machen Sie es richtig

Am 25.08. zeigt SEO-Experte Anton Littau, wie die richtige Strategie zum richtigen Zeitpunkt hilft.

SAP Silver Partner Logo

Neofonie ist SAP Silver Partner mit TXTWerk

Als SAP Silver Partner stellt Neofonie das Text Mining Framework TXTWerk im SAP App Center ab sofort bereit.

Ibexa-Logo

Neofonie und Ibexa sind Partner

Neofonie und Ibexa vereinbaren Partnerschaft, um Content und Commerce stärker miteinander zu verbinden.

Grant McGillivray

Neofonie startet eigenständige UX-Agentur

Das Geheimnis ist nun endgültig gelüftet: ION ONE nennt sich die neue UX-Agentur von Neofonie!

digital-ratgeber.de auf einen Macbook

Wort und Bild Verlag stellt Digital Ratgeber vor

Mit Neofonie als Partner bringt der Wort & Bild Verlag mit dem „Digital Ratgeber“ eine neue Informationsplattform für Apotheken und deren Kunden auf den Markt.

Stadtwerke Oranienburg News

Storytelling-Beratung für Stadtwerke Oranienburg

Neofonie unterstützt die Stadtwerke Oranienburg in einem kreativen Kommunikationsworkshop, um ihr Online-Ableseportal mit einem Kino-Werbespot zu promoten.

Frau mit Kind im Arm, tröstet das Kind

Spende für ein Berliner Kinderhospiz

Mitarbeiter der Neofonie und Neofonie Mobile spenden 1.500 EUR für das Berliner Kinderhospiz „Berliner Herz“.

Niedlicher Roboter

Chatbot erstellen in 5 Schritten

Wie ein Chatbot in wenigen Schritten entwickelt werden kann, stellen Bertram Sändig und Cornelia Werk vor.

Schwarzes Mikrofon

Neofonie Blogcast jetzt auf Google Podcast anhören

Mit der Einführung von Google Podcast in Deutschland, ist jetzt auch der Neofonie Blogcast auf allen Google-Geräten verfügbar.

Wann Big Data im Forderungsmanagement sinnvoll ist

Ob Analyseverfahren für ein Unternehmen sinnvolle Ergebnisse bringen, kann nicht pauschal beantwortet werden.

Rot-beleuchtete Treppen

Flexibilität als Erfolgsfaktor bei der Shopsystem Auswahl

Welche Punkte Sie bei einer neuen Shoplösung beachten sollten, stellt Michael Vax, VP Product bei Spryker vor.

Jovo Logo

Neofonie Mobile baut Alexa Skills and Google Actions mit Jovo

Neofonie Mobile ist neuer Partner des Entwicklungs-Framework Jovo und erstellt damit Sprachanwendungen für Google und Alexa.

Illustration von digitalen Versicherungen

Versicherungen im Vergleich: Apps sind Pflicht

Die aktuelle Marktanalyse des App-Spezialisten Neofonie Mobile belegt Nachholbedarf in der digitalen Transformation unter Versicherern und Krankenkassen.

Text Mining Consulting KI E-Commerce

Wie Onlineshops von Künstlicher Intelligenz profitieren

Welche Punkte Sie bei einer neuen Shoplösung beachten sollten, stellt Michael Vax, VP Product bei Spryker, vor.

Was eine moderne Suchlösung leisten muss

Eine Suche auf Websites hilft Nutzern, schneller Informationen zu finden. Suchlösungen haben dabei nicht mehr länger nur den Anspruch einzelne Begriffe zu finden, sondern relevante Inhalte gezielt auf die Bedürfnisse des Nutzers auszuspielen.

Individual-Commerce: Wie Produktkonfiguratoren Onlineshopper glücklich machen

Auch Onlineshops können den Kunden mittels smarter Produktkonfiguratoren individuell abholen und ihnen ihr ganz persönliches Shoppingerlebnis ermöglichen.

Jägermeister Produktkonfigurator

Wie Jägermeister mit neuem Onlineshop mehr Umsatz macht

Das Erfolgsrezept stellt Wiljo Krechting, Manager Public Relations von Shopware, genauer vor.

Mit B2B-Storytelling und UX zu mehr Erfolg

B2B Unternehmen müssen vom B2C-Nutzererlebnis lernen, um ihre Businesskunden nachhaltig zu begeistern. Dabei stehen User Experience (UX) und Storytelling im Mittelpunkt.

Unser Newsletter „Neo Report“ vermittelt konkretes Praxiswissen, Trends und Know-how für Ihr digitales Business – quartalsweise und kompakt. Jetzt anmelden.