© saicle/Shutterstock.com
Bis zu zehn Bestellungen pro Sekunde mit Magento

High Performance Magento in der Cloud


Magento ist eine großartige Plattform. Die zahlreichen Features lassen sich leicht ergänzen und auf den eigenen Business Case anpassen. Will man Magento im Enterprise-Umfeld betreiben, kommen schnell neue Anforderungen an Prozesse, Stabilität und Performance ins Spiel. Um einen Shop zu betreiben, der problemlos in der Lage ist, mehr als eine Million Besucher pro Tag, 5000 davon zur gleichen Zeit, und bis zu zehn Bestellungen pro Sekunde zu verarbeiten, muss man über den Tellerrand einzelner Server hinwegschauen und einiges optimieren. Mit dem Angry-Birds-Shop, einem der derzeit Traffic-stärksten Magento Stores, wurde bewiesen, dass dies möglich ist. Was hinter den Kulissen stattfindet, wird in diesem Artikel gezeigt.

Die Anforderungen an einen professionellen Shop unterscheiden sich deutlich von denen an einen kleineren Shop. Mit manuellen Anpassungen am Magento-Core und dem Kopieren einzelner Dateien kommt man nicht weit. Auch das synchrone Deployen neuer Features nimmt andere Dimensionen an, wenn mehr als ein Server im Spiel ist. Dazu muss der Shop hochverfügbar und ausfallsicher sein. Auch spontane, unvorhergesehene Lastspitzen dürfen ihn nicht in die Knie zwingen. Und dass die blitzschnelle Auslieferung von Seiten nicht nur für die Suchmaschinen gut ist, sondern sich auch positiv auf die Verkaufszahlen auswirkt, ist schon lange kein Geheimnis mehr.

Beim Betreiben eines Shops auf mehreren Servern kommen noch weitere Wünsche und Anforderungen hinzu: Die Server für den Backend-Zugang sollten unabhängig von den Frontend-Instanzen sein. Auch Hintergrund-Tasks und die Kommunikation mit externen Services sollten weder das Arbeiten im Backend noch die Auslieferung des Frontends beeinträchtigen.

Während eines Deployments und beim laufenden Betrieb sollte der Besucher nichts von neu hinzukommenden oder wegfallenden Serverinstanzen mitbekommen. Warenkörbe und Logins dürfen nicht verloren gehen und der Checkout-Prozess darf nicht unterbrochen werden.

Herausforderungen

All diese Anforderungen sind eine Herausforderung beim Konzipieren und Implementieren des Shops und des Deployment-Vorgangs. Wäre ein Magento-Server eine „Share Nothing“-Architektur [1], also vollkommen unabhängig von anderen Knoten, dann wären das Skalieren und das Deployment relativ einfach. Allerdings gibt es viele gemeinsame Ressourcen, die unter den Knoten geteilt oder synchronisiert werden müssen. Darunter die Datenbank, der Cache, die Sessions, die Produktbilder und Assets für das Theming, w...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang