Ist eine Microservice-Architektur Stand der Technik (Teil 4 - Voraussetzungen)

In den letzten Blogposts wurden die Vor- und Nachteile einer Microservice-Architektur herausgearbeitet und einander gegenübergestellt . Dabei hat sich herausgestellt, dass vielen der Vorteile auch nicht zu vernachlässigende Nachteile gegenüberstehen. Dieser Blogpost soll nun klären, unter welchen Voraussetzungen eine Microservice-Architektur Stand der Technik ist. D.h. (zumindest im Vergleich zu einer modulithischen Architektur) effektiver (also nur so die Ziele erreichend) oder zumindest effizienter (also die Ziele produktiver erreichend) ist: Skalierung: Microservices sind effektiver, wenn eine vertikale Skalierung (mehr CPUs, Arbeitsspeicher, Netzwerkbandbreite, ...) nicht ausreicht, um die Anforderungen an die Gesamtsoftware zu stemmen 1 und es Teile gibt, die sich nicht (horizontal) skalieren lassen und sich durch eine "Auslagerung" dieser Teile in Microservices das Gesamtsystem realisieren lässt. Ansonsten aber sind sie finanziell und organisatorisc...