Monolithische Architektur
Was ist eine monolithische Architektur?
Eine monolithische Architektur ist eine, in der die wesentlichen Fähigkeiten einer Anwendung - im E-Commerce etwa Katalog, Cart, Checkout, Content und Präsentation - als eine Einheit entwickelt und deployt werden. Die Codebasis ist einheitlich, die Laufzeit gemeinsam, und Änderungen an einem Teil verlangen typischerweise das Redeployen der gesamten Anwendung.
Definition
Monolithen dominierten Commerce-Software zwei Jahrzehnte lang, weil sie initiale Entwicklung und Betrieb vereinfachten. Eine Codebasis, eine Datenbank, eine Deployment-Pipeline. Der Trade-off: Die Teile des Systems werden mit der Zeit eng gekoppelt, gezielte Änderungen werden riskant und langsam. Performance-Probleme in einer Fähigkeit können die gesamte Anwendung verlangsamen.
Warum es heute relevant ist
Die meisten Legacy-Commerce-Plattformen in Produktion sind monolithisch. Sie funktionieren, begrenzen aber, wie schnell ein Händler den Storefront ändern, neue Services integrieren oder auf Performance-Probleme reagieren kann. Ein Redesign der Produktdetailseite kann Koordination mit Backend-Engineers erfordern, ein neuer Payment-Anbieter ein großes Release.
Migrationsmuster
Wenige Anbieter schreiben einen Monolithen in einem Schritt um. Der häufigere Weg ist, einen Headless-Storefront vor den Monolithen zu setzen, das monolithische Backend als API-Quelle zu behandeln und nach und nach spezialisierte Services - Search, Content, Recommendations, Payments - herauszuschälen. Mit der Zeit schrumpft der Monolith, bis er nur noch als Commerce-Engine fungiert, und wird irgendwann komplett ersetzt. Dieses Muster wird gelegentlich Strangler-Fig-Ansatz genannt.
Verwandt
Mehr dazu: Composable Digital Experience Platform · Composable Headless Frontend.