Anzeige

Microservices

Ob E-Commerce, Online-Banking oder Mobilitätsservices: Um in einer digitalen Geschäftswelt wettbewerbsfähig zu bleiben, müssen Unternehmen heute auf Veränderungen am Markt schnell reagieren und neue Ideen sofort umsetzen.

Für die Bereitstellung digitaler Dienste setzen viele Organisationen mittlerweile auf Microservice-Architekturen. Da diese sich aus einer Vielzahl kleiner, unabhängiger Module zusammensetzen, lassen sich mit ihnen komplexe digitale Anwendungen wesentlich schneller und flexibler entwickeln. Jeder Microservice erfüllt dabei eine bestimmte Funktion und nutzt eine genau definierte Schnittstelle, über die er mit anderen Modulen kommuniziert.

Eine Suite unabhängiger kleiner Dienste

In der Softwareentwicklung sind Microservice-Architekturen noch ein relativ junger Ansatz, der aus serviceorientierten Architekturen (SOA) hervorgegangen ist. Anstatt einzelne Funktionen in einer monolithischen Softwarearchitektur anzupassen, werden diese isoliert und als eigenständige, unabhängige Services bereitgestellt.

Ein bedeutender Vorteil besteht darin, dass sie dezentrales Arbeiten unterstützen und eine unabhängige Skalierung erlauben. Dies unterscheidet sie von traditionellen monolithischen Architekturen, die als ein großes, zusammenhängendes System entwickelt werden und auf einem einzigen Code-Block basieren. Alle enthaltenen Funktionsaspekte greifen auf dieselbe Datenbank zu und werden über eine einzige, gemeinsame Nutzerschnittstelle ausgegeben. Monolithische Software kann daher nur im Ganzen bereitgestellt werden. Ihr Nachteil besteht darin, dass selbst bei kleineren Änderungen einzelner Softwareabschnitte stets Anpassungen an der gesamten Architektur erforderlich sind, um einen reibungslosen Betrieb aller Funktionen sicherstellen zu können. In Microservice-Architekturen hingegen wird die Gesamtheit aller Funktionen als Suite kleiner Dienste zusammengesetzt, von denen jeder eine bestimmte Funktionalität adressiert. Jeder Programmteil verfügt dabei über eine eigene Code-Basis, sodass die Module dezentral und unabhängig voneinander entwickelt und bereitgestellt werden können.

Hohe Robustheit

Microservice-Architekturen zeichnen sich daher durch eine vergleichsweise hohe Robustheit aus. Fällt ein Microservice aus, bleiben alle anderen davon unbeeinträchtigt. Eine lange Fehlersuche durch den gesamten Programmcode, wie in monolithischen Softwarearchitekturen üblich, entfällt dabei, die Entwickler können sich sofort an die Lösung des Problems machen. Da jeder Microservice seine eigene Laufzeitumgebung besitzt, können verschiedene Microservices ohne Probleme unterschiedliche Programmiersprachen verwenden und eigene Datenbanken beziehungsweise Datenbankverwaltungssysteme einsetzen. Entwickler können autonom, spezialisiert und überaus lösungsorientiert arbeiten. 

Kommunikation auf Basis von REST-APIs

Damit alle Microservices im Sinne des übergeordneten Projektes ineinandergreifen, müssen sie über gemeinsame Anknüpfungspunkte verfügen. Container schaffen dabei einen standardisierten Rahmen, in dem die Microservices vollständig autark laufen. Anwendungsschnittstellen, auch APIs oder Application Programming Interfaces genannt, sorgen für die reibungslose Kommunikation zwischen Anwendungen, Services und Servern. Die API legt dabei genau fest, wie der Übergang zwischen zwei Microservice-Modulen vor sich gehen soll. Sie beschreibt zum Beispiel die Funktionalität eines Microservice oder das Format für die Ein- und Ausgabe der Daten. Da Microservices fast immer über Cloud-Infrastrukturen bereitgestellt werden, erfolgt die Kommunikation in der Regel über spezielle Web-APIs. Diese sogenannten REST (Representational State Transfer) APIs verwenden HTTP-Anfragen, um per GET, PUT, POST und DELETE auf die Daten zuzugreifen. Auf diese Weise kommunizieren Microservices auch dann miteinander, wenn sie zum Beispiel auf unterschiedlichen Servern liegen.

API basierte Microservices erfordern transparente Zusammenarbeit

Trotz der Vorteile, die die dezentrale Struktur von Microservice-Umgebungen mit sich bringt, drohen Reibungsverluste: Erfahrungswerte und praktikable Lösungsansätze bleiben womöglich auf die einzelnen verantwortlichen Teams beschränkt. Da Wissen und Arbeiten nicht geteilt werden, besteht die Gefahr, dass ein unnötig hoher Aufwand betrieben wird, um neue, zusätzliche Services zu entwickeln, obwohl unter Umständen bereits brauchbare Vorarbeiten vorhanden waren. Zudem kann es sein, dass im Zuge dessen ein Wildwuchs unterschiedlicher Services entsteht, was langfristig die IT-Kapazitäten belasten kann, da mehr Netzwerkbandbreite und Server erforderlich sind. Um durch Microservices einen dauerhaften Mehrwert zu schaffen, benötigen Unternehmen Transparenz über alle in den verschiedenen Teams entwickelten Lösungen. Dies gelingt durch eine zentrale API Management-Plattform, auf die alle Anwender Zugriff haben, ihre APIs teilen sowie bestehende für sich nutzen und anpassen können.

Offene API Management-Plattformen erlauben neben der Verwaltung eigener APIs auch den Zugriff auf APIs von Drittanbietern. Um ein effizientes Lifecycle-Management sowie die Steuerung mehrerer Gateways auch über Hybrid-Cloud-IT-Umgebungen sicherzustellen, sollte eine ideale digitale Management-Plattform über folgende Eigenschaften verfügen:

  • Automatisiertes Erkennen aller API Assets: Diese Eigenschaft ermöglicht eine schnelle Integration und bietet zudem einen Überblick, welche Ökosystem-Partner gerade auf der Plattform aktiv sind.
     
  • Rechtskonforme Kollaboration: Die Zusammenarbeit sollte nur mit Anbietern von Microservices erfolgen, die einverstanden sind, dass ihre Assets veröffentlicht, gesichert und nachverfolgt werden. Dazu sollte die digitale Plattform den Status des Einverständnisses beziehungsweise die gewünschte Form der Veröffentlichung und die Bestimmungen für den Gebrauch abfragen. So kann beispielsweise festgelegt werden, ob ein Microservice auch von Dritten genutzt, auf anderen Plattformen veröffentlicht oder weiterentwickelt werden darf.
     
  • Katalog: Ein umfassender Schnittstellen-Katalog, ein sogenanntes als API Verzeichnis, zeigt alle auf der Plattform verfügbaren digitalen Services an. Anwender können auf den Katalog über ein zentrales Portal zugreifen.
     
  • Übersichtliche Struktur: Eine benutzerfreundliche Struktur, die den Anwendern das Entdecken, Abonnieren und Verwenden API Lösungen leicht macht.

Grundsätzlich gilt: je offener eine Plattform, desto mehr Flexibilität, Agilität und Interoperabilität ist möglich. Voraussetzung dafür ist eine Multi-API Gateway-Umgebung, mit der sich Transparenz und Kontrolle über alle Microservices hinweg zentral an einem Ort herstellen lassen. Dabei sollte jeder auf die Plattform zugreifen dürfen, der sich als Nutzer registriert hat. Es darf keine Rolle spielen, ob sich ein Nutzer über eine Cloud, On-Premises, mehrere API Gateways oder verschiedene Integrationsmuster hinweg anmeldet. Dies erleichtert IT-Teams die Arbeit über verschiedene Standorte und Organisationseinheiten hinweg. Auf diese Weise können Unternehmen die Vorteile, die durch die Modularität von Microservice-Architekturen entstehen, nutzbar machen und Veränderungen in ihrer Geschäftsstrategie agiler umsetzen.

Axel Grosse, VP Amplify Success EMEA
Axel Grosse
VP Amplify Success EMEA, Axway

Artikel zu diesem Thema

API
Jul 05, 2021

10 gute Gründe, warum Unternehmen APIs nicht vernachlässigen sollten

Für den Connectivity Benchmark Report 2021 des Salesforce Tochterunternehmens MuleSoft…
E-Commerce
Jun 17, 2021

Customer Centricity: Mit Microservices im Onlinehandel mithalten

Spätestens mit der Corona-Pandemie wurde deutlich, wie wichtig der Handel übers Internet…
Stonehenge
Okt 19, 2020

Der „tanzende Monolith“ ergänzt die moderne Microservices-Architektur

Microservices rangieren zurzeit weit oben in der Gunst der Software-Entwickler. Aber sie…

Weitere Artikel

Google Analytics

Datenschutzkonforme Alternative zu Google Analytics ab sofort verfügbar

Nach der Early-Access-Phase wird Piwik PRO Core nun für die Öffentlichkeit freigegeben. Der kostenlose Plan für die Piwik PRO Analytics Suite mit weniger Einschränkungen und mehr Funktionalitäten ist nun für jeden verfügbar, der Kunden- und Nutzerverhalten in…
Software

Einführung komplexer Standardsoftware (Teil 3/3)

Neben zielgerichteter Produktauswahl (Teil 1 des Beitrags) und Systemintegration (Teil 2 des Beitrags) ist es für die Einführung komplexer Standardsoftware erfolgsentscheidend, dass Einführungsmethodik, Betriebsvorbereitung und Roll-Out-Strategie reibungslos…
Open Source

Open Source treibt die Digitalisierung weiter voran

Sonatype hat seinen siebten jährlichen State of the Software Supply Chain Report veröffentlicht, der ein anhaltend starkes Wachstum des Open Source-Angebots und der Dynamik der Nachfrage zeigt. Die Nachfrage nach Open Source ist im Vergleich zum Vorjahr um 73…
Software

Die Renaissance der Standard-Software

Starke Individualisierung und Anpassung von Software an die Bedürfnisse des Unternehmens oder Eigenentwicklungen galten für viele Unternehmen lange Zeit als Lösung der Wahl. Doch dieser Trend hat sich grundlegend gewandelt.
SAP

Erfolgreiche Migration auf SAPs neue Plattform S/4HANA

Die Digitalisierung ist längst im Alltag von Unternehmen angekommen und zieht sich mittlerweile durch sämtliche Branchen und Unternehmensbereiche. Mit dem Tempo der digitalen Wirtschaft steigt auch der ständige Innovationsdruck für Unternehmen.

Anzeige

Jetzt die smarten News aus der IT-Welt abonnieren! 💌

Mit Klick auf den Button "Zum Newsletter anmelden" stimme ich der Datenschutzerklärung zu.