Designed by macrovector / Freepik

Wie aus Leistungen skalierbare Services werden: Konzept der Microservices

 

Im Kontrast zur Modularisierung von Services steht das Konzept der Microservices. Im Gegensatz zum vorausgegangen Konzept werden Softwareprodukte nicht aus einzelnen Modulen zu Gesamtlösungen für individuelle Problemstellungen zusammengestellt, sondern einzelne Funktionen der Software Lösung extrahiert, welche als alleinstehende Services funktionieren. Wird bspw. eine Website eines Paketversanddiensts betrachtet, finden sich zahlreiche Funktionen, die als Microservice aufgebaut sein können: Sendungsverfolgung, Portoberechnung, Online-Frankierung etc.. Aus technischer Sicht ist bei einem solchen System ein wesentlicher Vorteil, dass wenn eine Funktion ausfällt oder nicht mehr verfügbar ist, die anderen davon nicht betroffen sind und weiterhin genutzt werden können. Ebenso können unterschiedliche Programmiersprachen für die einzelnen Services genutzt werden, um jeweils die bestmöglichen Ergebnisse zu erzielen.

 

Unabhängige Entwicklung birgt Potentiale auf verschiedenen Ebenen

Neben den technischen Vorteilen, bieten Microservices auch im Hinblick auf die Skalierbarkeit von Leistungen interessante Ansatzpunkte. Bedingt durch das Architekturkonzept lassen sich Microservices auch unabhängig vom Rest der Architektur anbieten. Dies ermöglicht es, mit den konzipierten Microservices auch neue Märkte und Anwendungsdomänen zu erschließen. Die unabhängige Entwicklung und Weiterentwicklung der Microservices ermöglicht es, die für den jeweiligen Anwendungsfall die am besten geeignetste Technologie zu nutzen sowie den jeweiligen Microservice entsprechend weiterzuentwickeln.

Microservices sind ein Architekturkonzept der Software-Anwendungsentwicklung. Der Unterschied zu herkömmlichen Ansätzen liegt in der Art und Weise wie die Software in ihre Kernfunktionen aufgeschlüsselt wird. Jede Funktion bzw. Service kann unabhängig entwickelt und implementiert werden. Somit stellt jede Kernfunktion einer Software einen Microservice dar. Dieser Microservice kann unabhängig von anderen Services ausgeführt werden.

Im Fokus steht die Funktion, die der Service erfüllen soll

Das Konzept der Microservices ist demnach eine weitere Möglichkeit Softwareprodukte zu standardisieren. Der Fokus liegt hier jedoch nicht auf der Befriedigung eines kompletten Prozesses durch Software-Lösungen sondern auf der Übernahme einzelner Funktionen durch den Service. Durch den Fokus auf die Funktion des Services können sie leicht auf andere Anwendungsfelder übertragen werden, die diese Funktionen ebenfalls benötigen.