API-Gateway: Definition, Funktionsweise und Anbieter

Download: Webentwicklung lernen
Jan Dollansky
Jan Dollansky

Aktualisiert:

Veröffentlicht:

Eine Programmierschnittstelle (Application Programming Interface, kurz API) ermöglicht es Ihnen, auf Dienste anderer Unternehmen – wie zum Beispiel Software, Daten oder Code – zuzugreifen. So können Sie nicht nur die Funktionen Ihres eigenen Produkts erweitern, sondern auch Zeit und Geld sparen. Aus diesem Grund nutzen immer mehr Unternehmen Drittanbieter-APIs bzw. erstellen eigene, um sie an externe App-Entwicklungsteams zu verkaufen.

Website-Besitzer kauft API-Gateway-Service am Tablet

Das Erstellen oder Hosten einer API ist jedoch gar nicht so einfach. Sie müssen Ihre APIs sichern, die Nutzung überwachen, Services hinzufügen oder entfernen und vieles mehr. Mit einem API-Gateway vereinfachen Sie diese Aufgaben.

In diesem Beitrag erläutern wir, was ein API-Gateway ist, wie es funktioniert, welche Gründe es für die Verwendung gibt und welche Anbieter empfehlenswert sind.

→ Webentwicklung lernen [Kostenloser Download]

Wir können die Funktionsweise eines API-Gateways mit einer Haustür vergleichen. Der Client, auch API-Verbraucher genannt, klingelt an der Tür und sagt, was er braucht. Eventuell bestätigt er auch seine Identität. Hinter der Tür befinden sich die Backend-Dienste, auf die der „Besuch“, also die Client-Anwendungen, zugreifen möchte. Er wartet dann darauf, dass die angeforderten Daten an die Tür gebracht werden.

Die Abläufe hinter der Tür sind für den Client nicht sichtbar: Seine Anfrage wird an die entsprechenden Bestandteile des API-Systems weitergeleitet und die Antwort wird dann an den Client zurückgeleitet.

Schauen wir uns im Folgenden an, wie ein API-Gateway technisch funktioniert.

Wie funktioniert ein API-Gateway?

Ein API-Gateway entkoppelt die Client-Schnittstelle von der Backend-Implementierung einer Systems Applications and Products (SAP)-Umgebung oder einer Microservice-Architektur. Diese API-Schnittstelle, die sich einfacher verwenden lässt als die zugrunde liegende Backend-Implementierung, ist zwischen dem API-Verbraucher und dem Anbieter angesiedelt.

Wenn ein API-Verbraucher eine Anfrage an das API-Gateway sendet, durchläuft diese drei Phasen:

Zunächst wird sie autorisiert, validiert und für einen Endpunkt im Backend transformiert. Dieser Schritt wird als Anfrageablauf (oder Request-Ablauf) bezeichnet. In dieser Phase kann es sein, dass der API-Anbieter einen bestimmten HTTP-Header, Abfrage-String oder API-Schlüssel verlangt, um den Aufrufer zu identifizieren und unbefugte Anfragen abzulehnen, zu drosseln oder ein Anfragelimit durchzusetzen.

Die Anfrage wird dann an die relevanten Services weitergeleitet. Im Amazon API-Gateway kann eine Anfrage beispielsweise an eine Funktion in AWS Lambda oder einer anderen AWS-Ressource weitergeleitet werden. Dort findet dann die eigentliche Arbeit statt: Ein Datensatz wird in der Datenbank gespeichert oder Tweets werden gestreamt – je nach Inhalt der Anfrage.

Abschließend wird die Anfrage erneut umgewandelt und zurück an den Client gesendet. Ein API-Gateway leitet eine Anfrage oft an mehrere Services weiter. Die Ergebnisse werden jedoch in einer einzelnen Antwort zusammengefasst. Diese Antwort kann einen HTTP-Statuscode enthalten, in dem bestätigt wird, dass die Anfrage erfolgreich war. Dieser Schritt wird als Antwortablauf bezeichnet.

Gründe für die Verwendung von API-Gateways

API-Gateways bieten eine Reihe von Vorteilen. Obwohl sich API-Gateways je nach Implementierung unterscheiden, haben sie in der Regel folgende Funktionen gemeinsam:

Die meisten API-Gateways übernehmen die Benutzerauthentifizierung und die Ratenbegrenzung. Dadurch wird verhindert, dass die API versehentlich oder vorsätzlich missbraucht wird. Außerdem bieten API-Gateways Analytics und Überwachung, sodass Sie nachverfolgen können, wie Benutzende Ihre APIs und Services verwenden.

Mit einem API-Gateway müssen Sie sich keine Sorgen darüber machen, wie sich das Hinzufügen oder Entfernen von API-Services auf den Zugriff durch Client-Anwendungen auswirkt. Client-Anwendungen können den Zugriff auf Ihre Services weiterhin über denselben Einstiegspunkt anfordern - sie müssen also nicht zahlreiche verschiedene API-Endpunkte verwenden.

Ein API-Gateway ist daher ideal für Anwendungen, die auf Microservices basieren – und zwar aus folgenden Gründen.

API-Gateways und Microservices

In der Vergangenheit besaßen Unternehmen eine einzige gigantische Anwendung, die alles übernahm. Wenn Client-Anwendungen Daten oder einen Service von dieser Anwendung abrufen wollten, geschah dies über einen einzigen API-Aufruf. Die Anfrage wurde dann über einen Lastenausgleich an einen der replizierten und identischen Endpunkte der Anwendung weitergeleitet. Die Anwendung rief dann verschiedene Datenbanktabellen ab, um die Anfrage zu erfüllen und eine Antwort an den Client zurückzugeben.

Heute hingegen nutzen viele Unternehmen eine Microservice-Architektur, in der verschiedene Services für verschiedene Aufgaben zuständig sind. Bei dieser Architektur haben Client-Anwendungen zwei Möglichkeiten auf diese Services zugreifen:

Die erste ist die direkte Kommunikation zwischen Client und Microservice. Dabei stellen die Client-Anwendungen ihre Anfragen direkt an die jeweiligen Microservices, indem sie mehrere Aufrufe an die korrekten Microservice-Endpunkte senden.

Grafik Direkte Kommunikation zwischen Client und Microservice

Quelle: Screenshot C#Corner

Dieser Ansatz ist allerdings mit einigen Problemen behaftet. Je mehr Anfragen ein Client an das Backend senden muss, desto mehr Roundtrips muss die Anwendung zwischen Client und Server durchlaufen. Dies kann zu höherer Latenz und längeren Wartezeiten für den Client führen.

Zudem muss jeder Microservice über öffentliche Endpunkte zugänglich sein. Dies bedeutet ein erhöhtes Sicherheitsrisiko. Die Implementierung von Sicherheitsmaßnahmen wie der Autorisierung für jeden einzelnen Microservice ist hier unerlässlich, erfordert aber einen erheblichen Aufwand und viel Zeit.

Und schließlich ist bei diesem Kommunikationsmodell auch die Aktualisierung der Anwendung mit großen Herausforderungen verbunden. Denn das Hinzufügen oder Entfernen von Microservices erfordert nicht nur einiges an Entwicklungsaufwand, sondern hat auch Auswirkungen auf Client-Anwendungen, die an bestehende interne Endpunkte gekoppelt sind.

Die direkte Kommunikation zwischen Client und Microservice funktioniert zwar für kleinere Anwendungen auf Microservicebasis, für größere und komplexere Anwendungen bietet sich allerdings ein indirekter Ansatz an. Hier kommt das API-Gateway ins Spiel.

Ein API-Gateway bietet einen einzigen Eingangspunkt für Client-Anwendungen. Das Gateway kann die Anfrage des Clients in mehrere Anfragen aufteilen, an verschiedene Backend-Services weiterleiten und die Antwort in einem einzigen Roundtrip an den Client zurückgeben. Somit reduziert ein API-Gateway die Anzahl der Anfragen zwischen Client und Server, was die Latenz und das Nutzererlebnis verbessert.

Grafik API-Gateway Funktionsweise

Quelle: Screenshot C#Corner

Open Source API-Gateway

Wie Software zum Erstellen von Websites können auch API-Gateways urheberrechtlich geschützt oder als Open Source verfügbar sein.

Ein urheberrechtlich geschütztes API-Gateway gehört einem anderen Unternehmen. Für die Nutzung des Gateways müssen Sie in der Regel eine Gebühr an den Anbieter entrichten, und Sie dürfen selbst keine Funktionen hinzufügen oder erweitern. Allerdings übernimmt der Anbieter einige der Verwaltungsaufgaben, etwa die Erzwingung von Compliance-Anforderungen oder Ratenlimits.

Ein Open Source API-Gateway hingegen können Sie kostenlos verwenden und beliebig erweitern. Die Erweiterung erfolgt meist über Plug-ins. Bei dieser Lösung sind Sie selbst für die alltäglichen Verwaltungsaufgaben zuständig.

5 Anbieter von API-Gateways

Wenn Sie die Vorteile eines API-Gateways nutzen möchten, können Sie unter vielen Anbietern auswählen. Je nach Bedarf können Sie sich für ein urheberrechtlich geschütztes oder ein Open Source API-Gateway entschieden, eines das auf Microservices oder eine andere Architektur spezialisiert ist usw.

Die nachfolgend aufgeführten Anbieter haben unterschiedliche API-Gateways, Services und Preismodelle im Angebot, die verschiedene Geschäftsbedürfnisse und Budgets abdecken.

1. Amazon API-Gateway

Amazon API-Gateway ist ein vollständig verwalteter Service, mit dem Entwicklungsteams APIs jeder Größenordnung einfach erstellen und verwalten können. APIs können für die Verwendung in den eigenen Client-Anwendungen erstellt oder externen App-Entwicklungsteams zur Verfügung gestellt werden.

Entwicklungsteams können nicht nur APIs mit Zugriff auf AWS, andere Webservices oder in AWS Cloud gespeicherte Daten erstellen und veröffentlichen, sondern profitieren auch davon, dass sich APIs wesentlich einfacher pflegen, überwachen und sichern lassen.

Das liegt daran, dass Amazon API-Gateway Hunderttausende von gleichzeitigen API-Aufrufen annehmen und verarbeiten kann und alle damit zusammenhängenden Aufgaben übernimmt, wie die Verwaltung des Datenverkehrs, die Autorisierung und Zugangskontrolle, das Drosseln und die Überwachung.

Bei Amazon API-Gateway fallen keine Mindestgebühren oder Anlaufkosten an. Sie sind nur für die bei Ihnen eingehenden API-Aufrufe und die übertragene Datenmenge verantwortlich. Damit Ihrem Wachstum nichts im Wege steht, bietet Amazon ein abgestuftes Preismodell. So senken Sie Ihre Kosten mit der zunehmenden API-Nutzung.

Screenshot API-Gateway von AWS Amazon

Quelle: Screenshot AWS Amazon

2. Apigee API-Gateway

Apigee API-Gateway ist eine äußerst flexibel skalierbare und sichere Lösung von Google. Mit dieser Plattform können Entwicklungsteams APIs entwickeln, sichern, veröffentlichen, analysieren, überwachen und monetisieren.

Apigee bietet sich besonders für die Modernisierung älterer SAP-Systeme an, denn die Plattform bietet einen sogenannten API-Wrapper, eine Abstraktionsebene zwischen Entwicklungsteams und älteren SAP-Systemen.

Das heißt: Entwicklungsteams können mit leistungsstarken und anpassungsfähigen APIs arbeiten und profitieren von einem einheitlichen und zuverlässigen Nutzererlebnis. Gleichzeitig übernimmt die Apigee-Plattform das Übersetzen von API-Aufrufen und leitet die Anfragen an die zugrunde liegende SAP-Umgebung weiter. Die Plattform übernimmt zudem weitere Funktionen wie die Authentifizierung, Bedrohungsbewertung und Drosselung.

Apigee API-Gateway kann kostenlos getestet werden, allerdings ist das Ausführen des API-Programms dann kostenpflichtig. Es gibt drei Preisstufen: Standard, Enterprise und Enterprise Plus. Wenden Sie sich direkt an Google, um weitere Informationen zu den Kosten bei den einzelnen Preisstufen zu erhalten.

Screenshot API-Gateway Apigee von Google

Quelle: Screenshot Apigee

3. Azure API-Gateway

Azure API-Gateway ist ideal für Hybrid- und Multi-Cloud-Umgebungen, bei denen APIs sowohl vor Ort als auch in der Cloud gehostet werden. Mit diesem Gateway können Organisationen alle ihre APIs über einen einzigen API-Managementservice sicher und effizient verwalten.

Das Gateway fungiert auch als Proxy für API-Anfragen, wendet Sicherheits- und Compliance-Richtlinien an und erhebt Telemetriedaten. Dabei ist es nur ein Teil der API-Managementlösung von Microsoft.

Zusätzlich zum Gateway gibt es die Verwaltungsebene und das Entwicklungsportal. Die Verwaltungsebene wird als API verfügbar gemacht und zur Konfiguration des API-Managementservices über das Azure-Portal und andere unterstützte Mechanismen verwendet. Im Entwicklungsportal werden Lernmöglichkeiten über die Verwendung von APIs und die Zusammenarbeit angeboten.

Screenshot API-Gateway von Azure Microsoft

Quelle: Screenshot Azure

4. Kong API-Gateway

Kong API-Gateway ist ein Open Source API-Gateway, das für die Microservice-Architektur optimiert ist (wobei es auch mit allen anderen Architekturen verwendet werden kann).

Kong API-Gateway ist auf einem einfachen Proxy aufgebaut und kann daher die Latenz minimieren und mehrere Microservice-Anwendungen unabhängig davon bedienen, wo sie ausgeführt werden. Für die Verwaltung und Drosselung von API-Anfragen bietet das Gateway eine Authentifizierungsebene zum Schutz Ihrer Services sowie Analytics für die Visualisierung und Überwachung des Datenverkehrs an Ihre APIs und Microservices.

Sie können Kong API-Gateway kostenlos herunterladen oder ein Upgrade auf das Enterprise-Abo durchführen um mehr Kontrolle über den Datenverkehr, Kundensupport und mehr zu erhalten.

Screenshot API-Gateway von Kong

Quelle: Screenshot Kong

5. Tyk API-Gateway

Tyk API-Gateway steht wie das Gateway von Kong als Open-Source zur Verfügung. Es hat zwar eine kleinere Community und weniger Plug-ins als das Gateway von Kong, ist aber einfach zu verwenden und zu erweitern.

Das Dashboard von Tyk bietet benutzerfreundliche Möglichkeiten für die Entwicklung, Pflege, Verwaltung und den Schutz Ihrer APIs. Außerdem lassen sich dort alle Verwaltungsaufgaben erledigen, von API-Schlüssel-Verwaltung, Ratenbegrenzung und Quoten bis hin zu API-Versionsverwaltung und Zugriffskontrolle.

Tyk bietet keine integrierte Abrechnungsfunktion, wodurch sich die gewinnbringende Nutzung von APIs schwieriger gestalten kann.

Screenshot API-Gateway von Tyk.io

Quelle: Screenshot Tyk.io

Die Wahl des passenden API-Gateway

Mit API-Gateways lassen sich APIs für Ihr Unternehmen einfacher, schneller und sicherer erstellen und verwalten. Die Wahl des Gateways hängt u. a. davon ab, wie viel Sie ausgeben möchten, wie viele Verwaltungsaufgaben übernehmen möchten und ob Sie sie Funktionen des Gateway erweitern möchten.

Kostenloser Download: Webentwicklung lernen

Titelbild: Inside Creative House / iStock / Getty Images Plus

Themen: API

Verwandte Artikel

Dieser Guide gibt Ihnen Tipps und Methoden an die Hand, wie Sie die Webentwicklung möglichst einfach erlernen können.

KOSTENLOS HERUNTERLADEN