Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Wählen Sie eine Methode aus, um Ihre Lambda-Funktion mithilfe einer Anfrage aufzurufen HTTP
In vielen gängigen Anwendungsfällen für Lambda wird Ihre Funktion mithilfe einer HTTP Anfrage aufgerufen. Beispielsweise möchten Sie möglicherweise eine Funktion direkt von einem Webbrowser aus aufrufen oder ein Tool wie curl
In den folgenden Abschnitten wird erläutert, über welche Optionen Sie Lambda aufrufen können, HTTP und es werden Informationen bereitgestellt, die Ihnen helfen, die richtige Entscheidung für Ihren speziellen Anwendungsfall zu treffen.
Welche Wahlmöglichkeiten haben Sie bei der Auswahl einer HTTP Aufrufmethode?
Lambda bietet zwei Hauptmethoden, um eine Funktion mithilfe einer HTTP Anfrage aufzurufen: Funktion URLs und API Gateway. Die wichtigsten Unterschiede zwischen diesen beiden Optionen sind die folgenden:
-
Die Lambda-Funktion URLs bietet einen einfachen, direkten HTTP Endpunkt für eine Lambda-Funktion. Sie sind im Hinblick auf Einfachheit und Wirtschaftlichkeit optimiert und bieten den schnellsten Weg, eine Lambda-Funktion verfügbar zu machen. HTTP
-
APIGateway ist ein fortschrittlicherer Dienst für die Erstellung von Funktionen mit vollem Funktionsumfang. APIs API Gateway ist für den Aufbau und die Verwaltung von Produktionen APIs in großem Maßstab optimiert und bietet umfassende Tools für Sicherheit, Überwachung und Verkehrsmanagement.
Empfehlungen, falls Sie Ihre Anforderungen bereits kennen
Wenn Sie sich über Ihre Anforderungen bereits im Klaren sind, finden Sie hier unsere grundlegenden Empfehlungen:
Wir empfehlen Funktionen URLs für einfache Anwendungen oder für die Prototypenentwicklung, bei denen Sie nur grundlegende Authentifizierungsmethoden und die Bearbeitung von Anfragen und Antworten benötigen und bei denen Sie Kosten und Komplexität auf ein Minimum reduzieren möchten.
APIGateway ist die bessere Wahl für Produktionsanwendungen in großem Maßstab oder für Fälle, in denen Sie erweiterte Funktionen wie Unterstützung für Open API Description
Was ist bei der Auswahl einer Methode zum Aufrufen Ihrer Lambda-Funktion zu beachten?
Bei der Auswahl zwischen Funktion URLs und API Gateway müssen Sie die folgenden Faktoren berücksichtigen:
-
Ihre Authentifizierungsanforderungen, z. B. ob Sie Amazon Cognito für die Benutzerauthentifizierung benötigen OAuth
-
Ihre Skalierungsanforderungen und die API Komplexität der
-
Ob Sie erweiterte Funktionen wie Anforderungsvalidierung und Formatierung von Anforderungen/Antworten benötigen
-
Ihre Überwachungsanforderungen
-
Was sind Ihre Ziele?
Wenn Sie diese Faktoren verstehen, können Sie die Option auswählen, die Ihren Anforderungen an Sicherheit, Komplexität und Kosten am besten gerecht wird.
Die folgenden Informationen fassen die wichtigsten Unterschiede zwischen den beiden Optionen zusammen.
-
Die Funktion URLs bietet grundlegende Authentifizierungsoptionen über AWS Identity and Access Management (IAM). Sie können Ihre Endpunkte so konfigurieren, dass sie entweder öffentlich sind (keine Authentifizierung) oder dass eine IAM Authentifizierung erforderlich ist. Bei der IAM Authentifizierung können Sie AWS Standardanmeldedaten oder IAM Rollen verwenden, um den Zugriff zu kontrollieren. Dieser Ansatz ist zwar einfach einzurichten, bietet aber im Vergleich zu anderen Authentifizierungsmethoden nur begrenzte Optionen.
-
APIGateway bietet Zugriff auf eine umfassendere Palette von Authentifizierungsoptionen. Neben der IAM Authentifizierung können Sie Lambda-Autorisierer (benutzerdefinierte Authentifizierungslogik), Amazon Cognito Cognito-Benutzerpools und .0-Flows verwenden. OAuth2 Diese Flexibilität ermöglicht es Ihnen, komplexe Authentifizierungsschemata zu implementieren, darunter Authentifizierungsanbieter von Drittanbietern, tokenbasierte Authentifizierung und Multi-Faktor-Authentifizierung.
-
Die Funktion URLs bietet eine grundlegende HTTP Bearbeitung von Anfragen und Antworten. Sie unterstützen HTTP Standardmethoden und beinhalten eine integrierte Unterstützung für die gemeinsame Nutzung von Ressourcen zwischen verschiedenen Quellen (CORS). Sie können zwar auf natürliche Weise mit JSON Payloads und Abfrageparametern umgehen, bieten jedoch keine Funktionen zur Transformation oder Validierung von Anfragen. Die Bearbeitung von Antworten ist ähnlich einfach — der Client erhält die Antwort von Ihrer Lambda-Funktion genau so, wie Lambda sie zurückgibt.
-
APIGateway bietet ausgefeilte Funktionen zur Bearbeitung von Anfragen und Antworten. Sie können Anforderungsvalidatoren definieren, Anfragen und Antworten mithilfe von Zuordnungsvorlagen transformieren und request/response headers, and implement response caching. API Gateway also supports binary payloads and custom domain names and can modify responses before they reach the client. You can set up models for request/response Validierung und Transformation mithilfe von JSON Schema einrichten.
-
Die Funktion URLs skaliert direkt mit den Parallelitätsgrenzen Ihrer Lambda-Funktion und bewältigt Verkehrsspitzen, indem Sie Ihre Funktion bis zum konfigurierten Maximallimit skalieren. Sobald dieses Limit erreicht ist, beantwortet Lambda weitere Anfragen mit HTTP 429 Antworten. Es gibt keinen integrierten Warteschlangenmechanismus, sodass der Umgang mit der Skalierung vollständig von der Konfiguration Ihrer Lambda-Funktion abhängt. Standardmäßig haben Lambda-Funktionen ein Limit von 1.000 gleichzeitigen Ausführungen pro. AWS-Region
-
APIGateway bietet zusätzlich zur Lambda-eigenen Skalierung zusätzliche Skalierungsfunktionen. Es umfasst integrierte Funktionen zur Warteschleife und Drosselung von Anfragen, sodass Sie Datenverkehrsspitzen besser bewältigen können. API Gateway kann standardmäßig bis zu 10.000 Anfragen pro Sekunde pro Region verarbeiten, mit einer Burst-Kapazität von 5.000 Anfragen pro Sekunde. Es bietet auch Tools zum Drosseln von Anfragen auf verschiedenen Ebenen (API, Phasen oder Methoden), um Ihr Backend zu schützen.
-
Function URLs bietet eine grundlegende Überwachung anhand von CloudWatch Amazon-Metriken, einschließlich Anzahl der Anfragen, Latenz und Fehlerraten. Sie erhalten Zugriff auf standardmäßige Lambda-Metriken und -Protokolle, die die Rohanfragen anzeigen, die in Ihre Funktion eingehen. Dies bietet zwar wichtige betriebliche Transparenz, die Metriken konzentrieren sich jedoch hauptsächlich auf die Funktionsausführung.
-
APIGateway bietet umfassende Überwachungsfunktionen, einschließlich detaillierter Metriken, Protokollierungs- und Verfolgungsoptionen. Sie können API Anrufe, Latenz, Fehlerraten und Cache-Treffer/Fehlschlagsraten überwachen. CloudWatch API Gateway lässt sich auch AWS X-Ray für verteiltes Tracing integrieren und bietet anpassbare Protokollierungsformate.
-
Die Funktionen URLs folgen dem Standard-Lambda-Preismodell — Sie zahlen nur für Funktionsaufrufe und Rechenzeit. Für den Endpunkt selbst fallen keine zusätzlichen Gebühren anURL. Dies macht es zu einer kostengünstigen Wahl für einfache Anwendungen APIs oder Anwendungen mit geringem Datenverkehr, wenn Sie die zusätzlichen Funktionen von API Gateway nicht benötigen.
-
APIGateway bietet ein kostenloses Kontingent
, das eine Million API eingehende Anrufe für REST APIs und eine Million eingehende API Anrufe für HTTP APIs umfasst. Danach berechnet API Gateway Gebühren für API Anrufe, Datenübertragung und Caching (falls aktiviert). Weitere Informationen zu den Kosten für Ihren eigenen Anwendungsfall finden Sie auf der Seite mit den API Gateway-Preisen .
-
URLsDie Funktionen sind auf Einfachheit und direkte Lambda-Integration ausgelegt. Sie unterstützen sowohl Endgeräte als auch HTTPS Endgeräte, bieten integrierten CORS Support HTTP und Dual-Stack- (IPv4undIPv6) Endpunkte. Ihnen fehlen zwar erweiterte Funktionen, sie zeichnen sich jedoch in Szenarien aus, in denen Sie Lambda-Funktionen schnell und unkompliziert bereitstellen müssen. HTTP
-
APIGateway bietet zahlreiche zusätzliche Funktionen wie API Versionierung, Stagemanagement, API Schlüssel für Nutzungspläne, API Dokumentation über Swagger/Open API WebSocket APIs, Private APIs Within a und WAF Integration für zusätzliche VPC Sicherheit. Es unterstützt auch kanarische Implementierungen, Scheinintegrationen zum Testen und die Integration mit anderen Systemen AWS-Services als Lambda.
Wählen Sie eine Methode, um Ihre Lambda-Funktion aufzurufen
Nachdem Sie sich mit den Kriterien für die Auswahl zwischen Lambda-Funktion URLs und API Gateway und den wichtigsten Unterschieden zwischen ihnen vertraut gemacht haben, können Sie die Option auswählen, die Ihren Anforderungen am besten entspricht, und die folgenden Ressourcen verwenden, um Ihnen den Einstieg in die Verwendung zu erleichtern.