Der WSO2 API Manager ist eine weit verbreitete Open-Source-Plattform für API-Management, die von Forrester-Wave bereits den Status des Marktführers erhalten hat. Mit der Version API Manager 4, die im Mai 2021 eröffentlicht wurde, erreicht sie neue Höchstwerte. Der WSO2 API Manager 4.0.0 ist der Nachfolger von WSO2 API Manager 3.2.0 und WSO2 Enterprise Integrator 7.1. Mit dieser Version werden die Funktionen für API Management und zur Integration in einer Solution vereint. In diesem Blog-Artikel gehe ich auf einige der wichtigen, entwicklerfreundlichen Funktionserweiterungen in WSO2 API Manager 4.0.0 ein.
Support für Streaming-APIs und eventgesteuerte Architekturen (EDA)
WSO2 API Manager 4.0.0 verfügt über eine erstklassige Unterstützung für Streaming-APIs und eventgesteuerte Architekturen (EDA) durch die Erleichterung von ASyncAPI-Spezifikationen und Protokollunterstützung für WebHook/WebSub und Server-sent events (SSE) zusätzlich zum WebSocket-Protokoll. Der WSO2 API Manager ist interessanterweise die einzige API-Management-Plattform, die eine vollständige Out-of-the-Box-Unterstützung für Streaming-APIs und eventgesteuerte Architekturen bietet.
- Support für Streaming-APIs
Mit der schnellen Anpassung von EDA verlassen sich viele Unternehmen auf Daten in Event-Streams im Gegensatz zu Datenbanken in traditionellen Architekturen. In den Topics gespeicherte Events werden als die einzige Informationsquelle betrachtet, wobei ein Topic als eine Tabelle in einer Datenbank aufgefasst werden kann. Nun können diese Event-Streams externen Clients und Applikationen als gemanagte Streaming-APIs über den WSO2 API Manager zugänglich gemacht werden. Streaming-APIs können über WebSocket-, WebHook- oder SSE-Protokolle bereitgestellt werden. Zudem werden sowohl das Abonnement als auch die Veröffentlichung von Ereignissen auf der Client-Seite unterstützt. Im Hinblick auf eine detaillierte Zugriffskontrolle können OAuth-Scopes verwendet werden, um einzuschränken, welche Themen/Warteschlangen Benutzer abonnieren oder veröffentlichen können. - Support für ASyncAPI Specification
Die ASyncAPI-Spezifikation wurde eingeführt, um die Oberflächen von Streaming-APIs ähnlich zu dokumentieren wie REST-APIs mit der Open API Specification. API Manager bietet die Möglichkeit, vorhandene Async/Streaming-APIs mithilfe der ASyncAPI-Spezifikation zu importieren oder eine ASyncAPI-Spezifikation für neu erstellte Ereignis-APIs zu generieren. Die genierte Spezifikation kann manuell bearbeitet werden und wird entsprechend aktualisiert, wenn Änderungen an der API vorgenommen werden. Dadurch können sich ASyncAPI-Entwickler nur auf die Entwicklungsaspekte der API und nicht auf die Dokumentation konzentrieren, während die API-Teilnehmer sich auf die API-Spezifikation verlassen können. - Streaming-APIs mit WebSocket-Protokoll
Das WebSocket-Protokoll bietet Vollduplex-Kommunikation und wurde bereits in früheren Versionen des WSO2 API Managers unterstützt. Durch den neuen Support für Streaming-APIs können Entwickler ihre Event-Streams nun jedoch über das WebSocket-Protokoll bereitstellen, sodass die Clients sowohl als Publisher als auch als Subscriber agieren können. - Support für das Server-sent Events (SSE)-Protokoll
Das SSE-Protokoll ist ein unidirektionales Protokoll, bei dem der Server die Ereignisse über HTTP an die abonnierten Clients weiterleitet. Es ist besonders effizient, da es bereits bestehende Client-Server-Verbindungen nutzt, um Nachrichten zu versenden, statt für jede Nachricht eine neue Verbindung aufzubauen. Dies wird in Szenarien eingesetzt, in denen Web-Clients/Anwendungen auf sich schnell aktualisierende Event-Streams reagieren müssen, wie z. B. bei Börsen-Broker-Anwendungen. Der API Manager bietet die Möglichkeit, ein neues SSE-basiertes Streaming-API komplett neu zu entwerfen oder ein API mithilfe einer ASyncAPI-Definition zu importieren. - Support für das WebSub/WebHook-Protokoll
WebSub ist ebenfalls ein unidirektionales Protokoll, bei dem der Server Events an die abonnierten Clients über HTTP POST an eine registrierte Callback-API sendet. Der API-Manager erleichtert dies, da er als Zwischenstelle fungiert, die Events an den registrierten Callback pusht, sobald es ein Update im abonnierten Event-Stream gibt. Wie die SSE- und WebSocket-APIs kann auch die WebHook-Streaming-API von Grund auf neu programmiert oder mithilfe einer ASyncAPI-Definition importiert werden.
Service-Katalog
Der Service-Katalog im API Publisher kann dazu verwendet werden, vom Mikro-Integrator oder Streaming-Integrator entwickelte Dienste (Proxy-Dienste, REST-APIs usw.) zu erkennen und sie entweder als verwaltete REST-APIs oder Streaming-APIs mit minimalem Aufwand bereitzustellen. Der integrierte Client in den Produkten Mikro-Integrator und Streaming-Integrator stellt der konfigurierten API-Manager-Laufzeit Informationen über die bereitgestellten Services zur Verfügung. Mit diesen Daten werden im Service-Katalog wichtige Informationen zu einem Service angezeigt, z. B. Name, Version, Beschreibung, Verwendungen in APIs und Service-Definition, was die API-geführte Integration erleichtert.
API-Revisionen
API-Revisionen ergänzen die API-Versionierung um eine weitere Dimension. Es war schon vorher möglich, mehrere Versionen einer API zu veröffentlichen, mit WSO2 API Manager 4 haben wir die zusätzliche Dimension der Revisionen hinzugewonnen.
API-Revisionen ermöglichen es, dass eine Revision einer API bereitgestellt wird, ohne sie sofort auf dem Gateway zu veröffentlichen, sodass zusätzliche Tests durchgeführt werden können, ohne dass sie von der Allgemeinheit genutzt werden. Falls Probleme auftreten, kann die Revision zurückgesetzt werden.
API-Revisionen sind eine Möglichkeit, API-Änderungen zunächst zu inszenieren, zu testen und dann zu veröffentlichen oder zurückzusetzen. Für jede API-Version sind maximal 5 Revisionen möglich, wobei der API-Entwickler mit Hilfe der Wiederherstellungsfunktion problemlos zu einer beliebigen Revision zurückkehren kann.
Schlussfolgerung
Der WSO2 API Manager 4.0.0 ist ein großer Sprung im Vergleich zur Vorgängerversion API Manager 3.2.0, sowohl in Bezug auf die Architektur als auch auf die Funktionalität. Als das einzige Produkt auf dem Markt, das einen vollständigen End-to-End-Support für eventgesteuerte Architekturen und Streaming-APIs bietet und gleichzeitig API-basierte Integrationen erleichtert, führt es in die nächste Ära des API-Managements ein. Yenlo wird das WSO2 APIM 4.0.0 zu seinem Connext Platform Stack hinzufügen, um diese neuen Funktionen unterstützen zu können. In der offiziellen WSO2-Dokumentation erfahren Sie mehr über den WSO2 API Manager.
Kontaktieren Sie uns, um zu besprechen, wie wir Ihnen helfen können, Ihre IT-Herausforderungen mit WSO2-Produkten zu lösen.