Jürgen Fälchle - stock.adobe.c
Fünf Gründe für die Einführung einer API-Managementplattform
Da APIs immer vielfältiger und komplexer werden, müssen Entwickler nach passenden Plattformen für das API-Management suchen. Welche Vorteile diese Plattformen aufweisen.
Die Welt der APIs ist dynamisch, da regelmäßig neue Funktionen hinzukommen und alte Funktionen bei Bedarf verschwinden. Leider ist es nicht einfach, alle Arten von API-Aufrufen mit einfachen Managementmethoden zu erfassen und darauf zu reagieren, insbesondere wenn die Anzahl der Aufrufe in Ihrer Softwareumgebung zunimmt. Irgendwann ist ein manuelles Management nicht mehr möglich, und ein automatisiertes System ist erforderlich.
Komplexe Legacy-APIs haben zum Beispiel oft viele bewegliche Komponenten, die in ihre Aufrufprozeduren verpackt sind. Diese einzelnen Teile lassen sich unter Umständen nur schwer verfolgen, so dass es schwierig ist, eine angemessene Versionierung vorzunehmen und sicherzustellen, dass alle Komponenten auf dem neuesten Stand sind. Es ist für Entwickler aber möglich, APIs zu versionieren, indem sie einfach einen Uniform Resource Identifier (URI) verwenden, um bestehende Aufrufe auf neue API-Funktionen umzuleiten. Dieser Ansatz kann jedoch alle möglichen Probleme verursachen, sobald Dienste mehrere – möglicherweise hunderte – Aufrufe verarbeiten müssen.
In diesem Artikel gehen wir auf die beiden grundlegenden Bereiche ein, welche API-Management abdecken muss, und untersuchen die wichtigsten Vorteile einer API-Managementplattform.
Ziele des API-Managements
Entwickler müssen die Vielzahl komplizierter API-Datenaustauschmechanismen, die in ihrer Softwareumgebung verstreut sind, sorgfältig verwalten. Dies bedeutet, dass sichergestellt werden muss, dass Anwendungsdienste über eine standardisierte und akzeptable Aufrufmethode für andere offen sind, und dass diese Methoden keine Probleme für API-Kunden verursachen.
Obwohl jede dieser Methoden ihre eigenen Aufgaben mit sich bringt, kann man sagen, dass es zwei Hauptziele für das API-Management gibt:
Sorgfältiger Umgang mit neuen Funktionen. Frühe Betatests neuer API-Aufrufe können normalerweise von kleinen Gruppen durchgeführt werden, die Zugang zu neuen Aufrufen erhalten. Wenn die neuen Funktionen jedoch erst einmal in der freien Wildbahn sind, können sie immer noch ein wenig fehlerhaft sein. Entwicklungsteams benötigen einen zuverlässigen Prozess zur Versionierung von APIs und zur Bereitstellung von Ausfallsicherheitsfunktionen.
Angemessene Dokumentation. Umfassende und aktuelle API-Dokumentation ist ein Muss. Moderne DevOps-Systeme verfolgen Nutzungsmetriken und definierte Referenzen, um automatisch eine angemessene Dokumentation zu erstellen. Die Entwickler können diese Dokumentation auch mit Java-Metadaten-Annotationen versehen, mit denen bestimmte Anfrage-/Antwort-Verhaltensweisen identifiziert werden können.
Vorteile einer API-Managementplattform
Selbst wenn die richtigen Prozesse vorhanden sind, ist ein umfassendes API-Management immer noch komplex und muss manuell durchgeführt werden. Hier kommen Anbieter ins Spiel, die sich auf API-Managementplattformen und verwandte Produkte spezialisiert haben. Zu den beliebtesten Optionen für API-Managementplattformen gehören derzeit Apigee (im Besitz von Google), Akana, Azure API Management und Tibco Cloud Mashery.
Hier sind fünf Vorteile einer API-Managementplattform:
1. Message Bussing und Discovery. Messaging- und API-Managementplattformen bieten Tools, die als Messaging Bus zwischen den verschiedenen Anwendungen, Applikationen, Funktionen, Diensten und APIs fungieren, welche in modernen IT-Umgebungen vorkommen. Die besten API-Managementplattformen sind in der Lage, neue API-Funktionen, die häufig von innovativen Entwicklungsunternehmen entwickelt werden, schnell zu erkennen und dann den richtigen Messaging-Prozess anzuwenden.
2. Versionierung und Dokumentation. Einige API-Managementplattformen können einen reinen Dienst nehmen und eine API für ihn erstellen, zusammen mit der erforderlichen Dokumentation. Sobald diese API erstellt ist, verwaltet das System automatisch neue Versionen, sobald sie entstehen. Wenn bestimmte API-Aufrufe nicht mehr benötigt werden, übertragen die meisten Tools den Aufruf entweder auf einen neuen Ersatzaufruf oder geben genau an, was mit dem aufrufenden Dienst geschehen ist.
3. API-Integration und Veröffentlichung. Einige Managementplattformen erstellen voll funktionsfähige API-Connector-Stubs, die es dem Benutzer ermöglichen, seine Dienste direkt mit den konsumierenden Diensten zu verbinden, ohne dass letztere ein tiefes Verständnis der API benötigen. Außerdem können sie oft als API-Veröffentlichungssystem fungieren und dafür sorgen, dass neue APIs bei Bedarf verfügbar sind.
4. API-Sicherheit. Diese Systeme neigen dazu, die API-Sicherheit abzufragen und zu verwalten, um sicherzustellen, dass keine Seite des Anfrage/Antwort-Paares potenzielle Angriffsflächen oder Datenlecks eröffnet. Dies ist besonders wichtig, wenn Sie planen, Ihre API für Drittkunden zugänglich zu machen.
5. Integration von DevOps-Tools. Viele API-Managementplattformen lassen sich direkt in vorhandene DevOps-Tools wie Git und Gradle integrieren. Dadurch wird sichergestellt, dass der API-Managementprozess so früh wie möglich in der Entwicklungsphase beginnt. Im Grunde hilft es, die Test- und Verbesserungsarbeiten zu erledigen, die vor Abschluss der Entwicklung stattfinden müssen.