Was bedeutet eigentlich Microservice-Architektur?

1 Min. Lesezeit
10.06.22 13:56

Wenn wir über Scan & Go und die Snabble Self-Checkout Cloud sprechen, fallen oft verschiedene Buzzwords. Eines davon ist unsere Microservice-Architektur.

Dass unsere Software auf Basis einer modernen Microservice-Architektur errichtet worden ist, ist einer der großen Vorteile der Snabble Cloud-Plattform gegenüber anderen Anbietern. Aber was bedeutet das eigentlich genau? Was sind Microservices und warum nutzen wir diese Form der Architektur?

Was sind Microservices?

Microservices bzw. Microservices-Architektur ist eine Softwareentwicklungsmethode, die eine Anwendung als eine kombinierte Sammlung von Diensten strukturiert. Diese Dienste arbeiten zusammen, um eine gesamte Anwendung zu bilden. Microservices werden lose gekoppelt. Das bedeutet, dass sie unabhängig voneinander entwickelt, bereitgestellt und skaliert werden können.

Jeder Dienst kommuniziert mit anderen Diensten über standardisierte Anwendungsprogrammierschnittstellen (APIs), sodass diese in verschiedenen Sprachen oder auf verschiedenen Technologien geschrieben werden können. Dies unterscheidet sich völlig von Systemen, die als monolithische Strukturen aufgebaut sind, bei denen die Dienste untrennbar miteinander verbunden sind und nur gemeinsam skaliert werden können.

Da jeder Dienst nur eine begrenzte, in der Regel singuläre Funktionalität hat, ist sowohl die Größe als als auch die Komplexität wesentlich geringer. Der Begriff Microservice leitet sich von dieser diskreten Funktionalität ab.

Durch die Zerlegung der Anwendung in einzelne Dienste, die spezifische Funktionen implementieren, bieten Microservices modernen Entwicklern die Möglichkeit, hoch skalierbare, flexible Anwendungen zu entwerfen.

Warum Microservices?

Microservices erfreuen sich zunehmender Beliebtheit, da ihre modularen Eigenschaften zu Flexibilität, Skalierbarkeit und geringerem Entwicklungsaufwand führen. In diesem Kontext ermöglichen Cloud-Plattformen die Skalierung von Microservices und Funktionen. Ein weiterer Vorteil ist die resultierende Modularität: So können einzelne Microservices kundenspezifisch angepasst, ausgetauscht oder anders zusammengesetzt werden.

Auch Snabble setzt auf diese Vorteile und ist dadurch in der Lage, in kürzester Zeit Piloten in der Snabble-App umsetzen zu können.