Microservices im E-Commerce

Was haben der Kurznachrichtendienst Twitter, On-Demand-Plattform Netflix und der Onlineshop Zalando gemeinsam? Sie setzen auf Microservices, um Wettbewerbsvorteile auszureizen. Microservices helfen monolithische Applikationen aufzubrechen und den time-to-market zu beschleunigen. So können beispielsweise Features schneller auf neue Anforderungen des Marktes angepasst werden. Die kleinen, flexibel-einsetzbaren Module haben klare Aufgaben und Verbindungen, dabei haben sie einen eigenen Lifecycle, sind unabhängig von Standard-Software und unterliegen dem Eigentum der Onlineshopbetreiber. Jan Herrmann, ehemaliger E-Commerce-Berater bei der Berliner Digitalagentur Neofonie, beschreibt es wie folgt:

Drei Ansätze, wie Microservices den E-Commerce aufbrechen

„Für Entscheider gibt es drei Möglichkeiten, um mithilfe von Microservices den E-Commerce anzukurbeln: Das Erweitern von Standardsystemen, um unabhängige, neue Features zu implementieren, die Entwicklung großer, individueller E-Commerce-Systeme auf Basis einer Microservice-Architektur oder den Abbau von Software-Altlasten und die Kapselung einzelner Bereiche in Microservices“

Was sind Microservices?

Unter Microservices versteht man in sich abgeschlossene Funktionen und Applikationen, die keine weiteren Abhängigkeiten innerhalb des Systems aufweisen, in denen sie verwendet werden. Die einzelnen Services kommunizieren mit einfachen Protokollen miteinander, sind aber für sich gesehen autark und besitzen jeweils eine eigene Datenbank. Ein Microservice repräsentiert meist eine in sich geschlossene Business-Funktion wie den Kaufprozess oder das Publishing.

Was sind die Vorteile von Microservices?

  1. Einfache Erweiterung
    Mit Microservices können Sie Ihre Services problemlos erweitern ohne zu befürchten, dass diese Anpassungen auf andere Services Auswirkungen haben.

  2. Schnelleres „time-to-market“
    Die Entwicklung von Microservices gewährleistet Ihnen damit schneller auf den Markt damit zu gelangen und Ihre Kunden neue Funktionen anzubieten.

  3. Problemlose Deployments
    Wenn Sie Anpassungen an Ihren Microservices vornehmen, können Sie diese ohne Probleme einzeln deployen und in Ihr System integrieren.

Drei Ansätze für Microservices im E-Commerce

1. Das Beste aus zwei Welten: Erweitern von Standardsystemen

Die Spanne an E-Commerce-Anwendungen reicht von einfachen SaaS-Systemen, wie Shopify über Standard-Software, die lediglich aufgesetzt und konfiguriert werden müssen bis hin zu komplexen Eigenentwicklungen. Viele Systeme scheitern jedoch an den individuellen Anforderungen des jeweiligen Online-Shops. Plugins bieten sich dann an, wenn man den Standard des Systems erweitern und auf Kernfeatures zurückgreifen möchte. Microservices hingegen eignen sich ideal dafür, um Erweiterungen fernab der Möglichkeiten der Standardsoftware zu implementieren. Dadurch können komplette, individuelle Checkout-Prozesse und komplexe Konfigurationen umgesetzt werden.

2. Content is King: CMS- mit E-Commerce-Lösungen kombinieren

Laut einer Studie des Content Marketing Forums stiegen allein im deutschsprachigen Raum die Content Marketing-Ausgaben 2016 um 18,9 Prozent auf 6,9 Milliarden Euro. Daher wird die Integration eines Shopsystems, einschließlich der Verknüpfung von Produktdaten und redaktionellem Content für den Online-Vertrieb immer wichtiger. E-Commerce-Systeme besitzen jedoch in der Regel nur eingeschränkte CMS-Funktionalitäten. Einige Systeme bringen rudimentäre Grundfunktionen für die redaktionelle Erstellung von Content Seiten mit, diese erinnern aber eher an einfache Blogs. Zwar gibt es einige Plugins mit denen sich manche CMS Systeme an E-Commerce-Lösungen anbinden lassen, aber auch hier sind die Möglichkeiten meist sehr eingeschränkt. Daher gilt es, entweder das CMS bzw. die E-Commerce-Anwendung mit den fehlenden Feature-Komponenten auszustatten oder die E-Commerce-Lösung via API mit einem CMS, wie beispielsweise Magnolia CMS zu verknüpfen. Moderne API-basierte E-Commerce-Lösungen wie commercetools geben die Möglichkeit ein CMS als Basissystem zu verwenden und um E-Commerce-Funktionen zu erweitern.

3. Software-Altlasten abbauen – Legacy-System aufrüsten

Legacy Systeme sind über die Jahre gewachsene Anwendungen, die meist sehr aufwändig an die Prozesse und Anforderungen eines Unternehmens angepasst wurden, sei es beispielsweise die Software zur Lagerhaltung oder die Organisation und Abwicklung von Bestellprozessen. Auf lange Sicht sind derartige Software-Altlasten allerdings aufwands- und kostenintensiv: Erweiterungen und Updates können somit nur eingeschränkt umgesetzt werden. Die Wartung, das Überwachen sowie das Fixen von Bugs und wechselseitige Abhängigkeiten gestalten sich zunehmend umfangreicher. Ersetzt man schrittweise Funktionalitäten des alten Systems durch kleine Microservices, kann die Erweiterbarkeit des Systems wiederhergestellt werden, die Wartungsaufwände reduziert und die Performanz des Gesamtsystems kann so durch diese Entlastungen gesteigert werden. Für IT-Leiter bedeutet dies vor allem die Wiederherstellung von Beweglichkeit.

Fazit

Microservices bieten Ihnen gerade im E-Commerce viele Vorteile und Möglichkeiten. Falls Sie viele individuelle Anforderungen an Ihr System haben und sich dieses dynamisch durch kontinuierliche Entwicklungen erweitern soll, bietet sich hier definitiv eine Microservice-Architektur an!

 

Veröffentlichung am 31. August 2017, aktualisiert am 12. Oktober 2020