Open Source im professionellen Einsatz
Linux-Magazin 07/2013
© Rovio

© Rovio

Magento-Shop in Amazons Cloud

Ins gemachte Nest

Dank der Skalierbarkeit von Amazons Webdiensten brechen der Angry-Birds-Shop und seine Datenbanken auch beim Massenanflug der Vogelliebhaber nicht zusammen.

421

Bekannt geworden ist Rovio 2009 mit einem kleinen Spiel, das zuerst als Smartphone-App erschien. Darin ließen verärgerte Vögel unter vollem Federeinsatz Gebäude kollabieren. Heute machen die Finnen vor allem mit T-Shirts, Plüschtieren und Schlüsselanhängern den größten Teil ihres Umsatzes. Ihren Angry-Birds-Webshop in der Cloud besuchen bis zu eine Million Nutzer am Tag. Zu Spitzenzeiten sind 5000 Besucher zugleich online und das System verarbeitet mehrere Bestellungen pro Sekunde.

Rovio setzt dabei auf Magento, die Open-Source-Anwendung für E-Commerce, und kombiniert sie mit Amazons Web Services (AWS), um den Shop auch in ruhigeren Zeiten wirtschaftlich zu betreiben. Rovios Magento-Universum besteht aus dem Shop mit seinen Store-Frontends für Europa, Asien und Amerika. Auch ERP und Warenwirtschaft wickeln die Finnen komplett mit Magento ab.

Extern angebunden sind die weltweite Lagerverwaltung, der Versand, ein DRM-Server für die Lizenzvergabe bei Spielen, ein E-Mail- und Geschenkkartendienst sowie der Bezahlservice Braintree.

Stets wie neu

Während viele Onlineshop-Betreiber die Last auf ihrem System gut kalkulieren können, muss der Rovio-Shop beim Veröffentlichen neuer Spieleversionen, neuer Merchandising-Artikel oder nach Facebook-Aktionen oft ein sehr hohes Besucheraufkommen verarbeiten.

Zu Beginn des Projekts beschloss Rovio daher, zusammen mit dem Webteam von AOE Media, den Angry-Birds-Shop in Form agiler Software-Entwicklung zu betreiben und fortlaufend neue Releases einzuspielen – das Stichwort lautet Continuous Deployment. Das bedeutet, eine Webseite wie ein Softwareprojekt regelmäßig neu zu generieren und automatisch sowie manuell zu testen: Bei jeder Änderung baut das System die Webseite komplett oder teilweise neu.

Voraussetzung dafür ist ein ausgefeiltes System für die automatische Qualitätssicherung und Bereitstellung. Auch Rollbacks muss es beherrschen, damit neue Funktionen, Module, Layoutänderungen und Templates binnen Minuten auf Test- und Produktivsystemen landen.

Schnelltest im Backshop

Im Fall des Rovio-Shops holen sich die Entwickler vor Aufnahme der Arbeit die aktuelle Version aus dem Systemspeicher, den das Produktivsystem über Nacht füllt. Änderungen an der Webseite fließen zurück in eine Versionsverwaltung. Die veränderte Seite wird dann mit Bildern und Texten der Seitenbetreiber zusammengeführt, die im Backup-Storage warten.

Nach ersten Unit-Tests installieren die Entwickler die Seite auf dem so genannten Latest System, wo weitere Tests folgen (Abbildung 1). Sie wird dann auf einen Staging-Server in die S3-Cloud geschoben und landet, nach letzten Integration Tests, auf dem Produktivsystem. Sämtliche Builds der Webseite, egal ob automatische oder manuell unterstützte, übernimmt der freie Continuous Integration Server Jenkins CI [1].

Abbildung 1: Mit Hilfe eines automatisierten Test- und Buildsystems wird Rovios Shop verändert, intensiv getestet und dann in die Cloud geschoben.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 3 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

comments powered by Disqus

Stellenmarkt

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.