Dezentrale IT-Organisation

Tipps für das Management API basierter 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.

Anzeige

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. 

Anzeige
Newsletter
Newsletter Box

Mit Klick auf den Button "Jetzt Anmelden" stimme ich der Datenschutzerklärung zu.

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

Axway

Anzeige

Artikel zu diesem Thema

Weitere Artikel

Newsletter
Newsletter Box

Mit Klick auf den Button "Jetzt Anmelden" stimme ich der Datenschutzerklärung zu.