Wie performant ist Magento eigentlich?

Gerade bei der Einführung von Magento im Jahr 2008 hatte die Software anfangs den Ruf, nicht besonders performant zu sein. Rückwirkend betrachtet war diese Aussage – gerade im Vergleich zu manch damals verwendeten, sehr schlanken Lösungen – sicherlich auch nicht ganz falsch. Diese Kritik wurde von Magento aber sehr schnell angenommen und massiv an der Geschwindigkeit gearbeitet. Inzwischen lassen sich mit Magento nahezu alle denkbaren bzw. erträumbaren Traffic- und Katalogszenarien abbilden.

 

 

Was dies in der Praxis bedeutet, zeigt das Beispiel unseres Kunden Ritter Sport, dem Ende letzten Jahres mit der sog. Einhorn-Aktion einer der Marketing Coups der letzten Jahre gelungen ist. Im November 2016 hat Ritter Sport eine limitierte Einhorn-Schokolade auf den Markt gebracht und damit für Ausnahmezustände gesorgt:

Gefühlt wollte ganz Deutschland diese Schokolade haben – und zwar sowohl online als auch offline….

 


Traffic (Besucher und Bestellungen)


In “nackten Zahlen” bedeutete dies für den Webshop u.a. folgendes:

  • Mehr als 300.000 Concurrent User
  • 90% davon gingen in Warenkorb und Checkout
  • In der Spitze bis zu 35 Bestellungen pro Sekunde
  • Mehr als 1.000 Bestellungen pro Minute (> als 10.000 Tafeln pro Minute)
  • 27.000 Datenbankrequests pro Sekunde (90MB/s)
  • Hochgerechnet mehr als 1.2 Mio. Bestellungen pro Tag (dies entspricht Größenordnungen von Amazon im Vorweihnachtsgeschäft)

Weitere Details zum Projekt, der Einhorn-Aktion und den Learnings können unserem Vortrag auf der Magento Live, die im Juni in London stattgefunden hat, entnommen werden:


Was sind einige der Learnings aus diesem Projekt?

  • Derart volatile Trafficszenarien lassen sich in der Regel nur noch über entsprechende Cloud-Hosting-Umgebungen bewerkstelligen.
  • Für ein vernünftiges Cloud-Setup ist entsprechende Praxiserfahrung notwendig – sowohl auf Hosting- als auch Applikationsebene.
  • Caching kann zwar sehr wichtig sein, bei sehr hohen Conversionrates hilft dies allerdings nur noch sehr bedingt.
  • Besucherströme lassen sich insbesondere in Bezug auf Timings nur sehr bedingt steuern. Von daher empfiehlt es sich genügend zeitlichen Puffer bei etwaigen Aktionen einzuplanen.

 

We did it again!

Im Rahmen des diesjährigen Red Nose Day, wurden von Ritter Sport in Kooperation mit Pro7 zwei Sorten Circus Halligalli Schokolade entwickelt und während der gleichnamigen Fernsehsendung promoted. Die beiden Sorten “Vollmilch-Randale mit Flakes” und “Joghurt Klatsche mit Crunch” gingen auch innerhalb kürzester Zeit durch die Decke, allerdings war der Ansturm hier nicht mehr ganz so extrem wie beim Einhorn. Das inzwischen eingespielte AWS Setup “verkraftete” diesen Peak ohne Probleme!

 

Katalogumfang (Produktanzahl)

Neben dem anstehenden Traffic ist insbesondere die Anzahl der Produkte (SKUs) in einem Online-Shop für etwaige Performancethemen relevant. Je größer der Produktkatalog und damit die Anzahl der Produkte und je umfangreicher die Kategorisierungen und Filter- möglichkeiten, desto höhere die Anforderungen an die Softwarelösung.

Natürlich kann man hier mit mehr Aufwand bei der Infrastruktur einiges bewerkstelligen und gerade durch Cloud-Hosting wird einem dies auf intrakstruktureller Seite immer einfacher gemacht. Nichts desto trotz, ist es so, dass eine vernünftige Basis-Performance auch bei umfangreichen Produktkatalogen sehr wichtig ist.

Dabei sind mehrere Tausend- bzw. mehrere Zehntausend Produkte normalerweise überhaupt kein Problem. Anspruchsvoller wird das Ganze, wenn man mit 6-stelligen Umfängen zu tun hat. Gerade im B2B-Umfeld kommt es aber auch durchaus häufiger vor, dass selbst derartige Zahlen nicht ausreichen. Denkt man beispielsweise an einen Ersatzteilshop aus dem technischen Umfeld, können durchaus auch mal 7-stelligen Katalogumfänge anstehen.

Auch mit solchen Größenordnungen kann Magento – bei richtiger Implementierung – und mit entsprechender Infrastruktur umgehen, wodurch die Shopsoftware auch absolut enterprisetauglich ist. Die aktuell umfangreichsten Magento-Projekte sind im B2B-Umfeld angesiedelt und beinhalten eine siebenstellige Produktanzahl. Voraussetzung hierfür ist – wie bei nahezu jedem anspruchsvollen IT-Projekt – ein erfahrener Implementierungspartner!

 

3rd Party Integrationen

Insbesondere im B2B-Umfeld hat man es sehr häufig mit der Anbindung unterschiedlichster Drittsysteme zu tun, die zum Teil auch in Echtzeit Daten austauschen. Beispiele für solche Drittsysteme sind u.a.:

  • ERP-Lösungen (z.B. SAP, Microsoft Dynamics/NAV, Oracle JDEdwards, Infor M3)
  • PIM-Applikationen (z.B. Contentserv, Informatica, Akeneo
  • CRM-Software (z.B. Salesforce, ORO CRM, Hubspot)

Magento bietet hier bereits im Standard umfassendste APIs, mit denen auf nahezu alle Daten im Shop zugegriffen werden kann. Besonders beim Austausch großer Datenmengen zwischen dem Shop und etwaigen Drittlösungen sind performante und praxiserprobte Lösungen gefragt. Hier arbeiten seit mehrere Jahren mit einer von uns entwickelten Middleware namens TechDivision EIP. Das Kürzel steht für Enterprise Integration Platform und es verbirgt sich dahinter eine äußerst leistungsfähige Plattform für den Datenaustausch zwischen Magento und nahezu beliebigen Drittsystemen.

Insbesondere durch Magento 2 haben wir unsere Applikation nochmals massiv erweitert und optimiert. So können wir beim Datenaustausch inzwischen folgende Werte erzielen: 

Für unseren Vergleich nutzen wir eine aktuelle Magento 2 Instanz mit ausgeschalteten CRON:

 

Produkt Import

  • 25 Custom Attribute
  • 4.740 Konfigurierbare Produkte
  • 69.660 Einfache Produkte

——————————–

= 74.400 Produkte

  • Keine Bilder
  • Keine Verknüpfungen (Upsell, Cross-Sell oder Zubehör)
  • Zuordnung der konfigurierbaren Produkte zu XXX-Kategorien

 

Import (add-update) in leere DB

  • M2EIP: 574s (~10m) – vendor/bin/import-simple import:products add-update –magento-edition=EE –debug-mode=false –log-level=error
  • Standardimport: 244m (~4h) – bin/magento catalog:import –behavior=“add_update“ var/product-import_20170512-1449_01.csv

 

Import (replace)

  • M2EIP: 602s (~10m) – vendor/bin/import-simple import:products replace –magento-edition=EE –debug-mode=false –log-level=error
  • Standardimport: 237m (~4h) – bin/magento catalog:import –behavior=“replace“ var/product-import_20170512-1449_01.csv

 

Fazit

Analog zu nahezu jeder anderen Technologie ist die Erfahrung und Qualität des Dienstleisters auch bei Magento-Projekten von entscheidender Bedeutung. Eine äußerst leistungsfähige und flexible, technologische Basis für erfolgreiche Shop-Projekte ist mit Magento 2 definitiv vorhanden. Im Vergleich zur Vorgängerversion ist Magento 2 jedoch sicherlich auch nochmals anspruchsvoller, in Bezug auf Erfahrung, Wissen und verwendete Infrastruktur. Wenn dies jedoch berücksichtigt wird, lassen sich mit Magento 2 allerdings nahezu alle denkbaren Anforderungen realisieren.

 

 

Kommentar abgeben

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.