Amazon API Gateway ist ein vollständig verwalteter Service, der das Veröffentlichen, Warten, Überwachen, Sichern und Betreiben von APIs in jeder beliebigen Größenordnung für Entwickler vereinfacht. Es ist ein nutzungsabhängiger Service, der die undifferenzierten rechenintensiven Aufgaben im Zusammenhang mit der sicheren und zuverlässigen Ausführung der APIs in jeder Größenordnung abwickelt.

Mit der Verbreitung von mobilen Geräten und dem Aufstieg des Internet of Things werden Backend-Systeme und Daten immer häufiger durch APIs für Anwendungen zugänglich gemacht. Da so viele Anwendungen diese APIs verwenden und Entwickler-Communitys sich darauf verlassen, wird immer mehr Zeit und Aufwand für Entwicklung und Verwaltung der APIs eingesetzt. Damit Sie diese APIs einfach nutzen können, kann API Gateway Client-SDKs für eine Vielzahl von Sprachen wie JavaScript, iOS und Android generieren.

Unterstützung für RESTful APIs und WebSocket-APIs

Mit API Gateway können Sie RESTful APIs entweder mit HTTP APIs oder REST APIs erstellen. HTTP-APIs sind der beste Weg, um APIs zu erstellen, die keine API-Verwaltungsfunktionen erfordern. HTTP-APIs sind für serverlose Workloads und HTTP-Backends optimiert – sie bieten im Vergleich zu REST-APIs von API Gateway bis zu 71 % Kosteneinsparungen und 60 % Latenzreduzierung. Für Workloads, die API-Proxy-Funktionalität und API-Verwaltungsfunktionen in einer einzigen Lösung erfordern, wie z. B. Nutzungspläne und API-Schlüssel, bietet API Gateway REST-APIs. Um einen direkten Vergleich der unterstützten Funktionen für HTTP-APIs und REST-APIs zu sehen, lesen Sie unsere Dokumentation. Verwenden Sie WebSocket-APIs, um Anwendungen mit bidirektionaler Echtzeit-Kommunikation wie Chat-Apps und Streaming-Dashboards zu erstellen. Mehr über RESTful APIs und WebSocket APIs von API Gateway erfahren Sie auf unserer FAQ-Seite.

Private Integrationen mit AWS ELB & AWS Cloud Map

Mit API Gateway können Sie Anfragen an private Ressourcen in Ihrem VPC weiterleiten. Mit HTTP-APIs können Sie APIs für Dienste hinter privaten ALBs, privaten NLBs und IP-basierten Diensten, die in der AWS Cloud Map registriert sind, wie z. B. ECS-Aufgaben, erstellen.

Ausfallsicherheit

API Gateway hilft Ihnen, den Datenverkehr zu Ihren Backend-Systemen mithilfe von Regeln zur Einschränkung der maximalen Bandbreite zu verwalten, die auf der Anzahl der Anfragen pro Sekunde basieren, und zwar für jede HTTP-Methode in Ihren APIs. API Gateway bewältigt beliebig große Datenmengen von einer API. Sie können sich also auf Ihre Geschäftslogik und Services konzentrieren, anstatt die Infrastruktur zu warten. Wenn Sie REST APIs verwenden, können Sie einen Cache mit anpassbaren Schlüsseln und Time-to-Live in Sekunden für Ihre API-Daten einrichten, damit Sie nicht für jede Anfrage Ihre Backend-Services einsetzen müssen.

Einfache API-Erstellung und -Bereitstellung

Mit API Gateway können Sie schnell und einfach eine benutzerdefinierte API für Ihren in AWS Lambda ausgeführten Code erstellen und dann den Lambda-Code von Ihrer API aus aufrufen. API Gateway kann AWS Lambda-Code in Ihrem Konto ausführen, AWS Step Functions-Zustandsmaschinen starten oder AWS Elastic Beanstalk, Amazon EC2 bzw. Web Services außerhalb von AWS mit öffentlich verfügbaren HTTP-Endpunkten aufrufen. Mithilfe der API Gateway-Konsole können Sie Ihre REST-API und deren zugeordnete Ressourcen und Methoden definieren, Ihren API-Lebenszyklus verwalten, Ihre Client-SDKs generieren und API-Metriken anzeigen.

Überwachen von API-Operationen

Nachdem eine API bereitgestellt wurde und genutzt wird, präsentiert API Gateway Ihnen ein Dashboard, damit Sie die Aufrufe der Dienste visuell überwachen können. Die API Gateway-Konsole und Amazon CloudWatch sind integriert. Sie erhalten also Backend-Leistungsmetriken, wie etwa API-Aufrufe, Latenz und Fehlerquoten. Da API Gateway CloudWatch verwendet, um die Überwachungsdaten aufzuzeichnen, können Sie eigene Alarme zu API Gateway-APIs einrichten. API Gateway kann auch API-Ausführungsfehler in CloudWatch Logs aufzeichnen, um das Debuggen zu vereinfachen.

AWS-Autorisierung

Um API-Anfragen bei AWS-Services zu autorisieren und zu prüfen, kann API Gateway Ihnen helfen, die Signaturversion 4 für REST APIs und WebSocket APIs zu nutzen. Mit der Signaturversion 4-Authentifizierung können Sie AWS Identity and Access Management (IAM) verwenden und auf Richtlinien zugreifen, um den Zugriff auf Ihre APIs und alle Ihre anderen AWS-Ressourcen zu autorisieren. Sie können auch AWS Lambda-Funktionen verwenden, um Bearer-Token wie beispielsweise JWT-Token oder SAML-Assertionen zu verifizieren und zu autorisieren.

API-Schlüssel für externe Entwickler

Wenn Sie REST APIs verwenden, hilft Ihnen API Gateway, das Systemumfeld externer Entwickler zu verwalten, die auf Ihre APIs zugreifen. Sie können API-Schlüssel für API Gateway erstellen, detaillierte Zugriffsberechtigungen für jeden einzelnen API-Schlüssel einrichten und sie für den Zugriff auf Ihre APIs an externe Developer weitergeben. Außerdem können Sie Pläne definieren, die eine Einschränkung der maximalen Bandbreite und Quotenlimits der Anforderungen für die einzelnen API-Schlüssel festlegen. Die Nutzung von API-Schlüsseln ist völlig optional und muss jeweils auf Methodenebene aktiviert werden.

Generieren von SDKs

Wenn Sie REST APIs verwenden, kann API Gateway Client-SDKs für eine Reihe von Plattformen generieren, die Sie einsetzen können, um neue APIs von Ihren Anwendungen schnell zu testen und SDKs an externe Entwickler weiterzugeben. Die generierten SDKs handhaben API-Schlüssel und Signieranfragen mithilfe von AWS-Anmeldeinformationen. API Gateway kann Client-SDKs für Java, JavaScript, Java für Android, Objective-C oder Swift für iOS und Ruby generieren. Sie können die AWS-CLI zum Generieren und Herunterladen eines SDK einer API für eine unterstützte Plattform verwenden, indem Sie den get-sdk-Befehl aufrufen.

Verwaltung des API-Lebenszyklus

Wenn Sie REST APIs verwenden, können Sie mit API Gateway mehrere Versionen derselben API gleichzeitig ausführen, sodass Anwendungen weiterhin frühere API-Versionen aufrufen können, auch nachdem die neuesten Versionen veröffentlicht wurden. API Gateway hilft Ihnen auch, mehrere Freigabestufen für jede API-Version zu verwalten, etwa Alpha, Beta und Produktion. Jede API-Stufe kann so konfiguriert werden, dass sie auf der Basis Ihrer API-Einrichtung mit verschiedenen Back-End-Endpunkten interagiert. Spezifische Stufen und Versionen einer API können einem benutzerdefinierten Domänennamen zugeordnet und über API Gateway verwaltet werden. Mit Stufen- und Versionsmanagement können Sie bequem neue API-Versionen testen, frühere API-Freigaben erweitern oder neue Funktionen hinzufügen. Es gewährleistet Rückwärtskompatibilität, während Benutzer-Communitys nach und nach zur neuesten Version übergehen.