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.
AWS Lambda-Webfunktionen
Mit AWS Lambda Web Functions können Sie Webanwendungen und API-Backends als serverlose HTTP-Server ausführen. Ihr Code überwacht einen Netzwerkport und verarbeitet Anfragen direkt. Sie können vertraute Node.js Web-Frameworks wieExpress,Hono, oder React Router ohne Lambda-specific Adapter oder Wrapper verwenden. Sie entwickeln und betreiben Ihren Server lokal wie jede andere Node.js Web-App.
Sie stellen Ihren Code als ZIP-Datei bereit. Lambda erstellt einen HTTPS-Endpunkt, verwaltet die Ausführungsumgebungen und skaliert Ihre Anwendung anhand des Datenverkehrs, auch auf Null, wenn sie inaktiv ist. Um die Latenz für global verteilte Benutzer zu reduzieren, können Sie die Lösung für mehrere Benutzer AWS-Regionen hinter einem einzigen Endpunkt bereitstellen. Lambda verwendet latenzbasiertes Routing, um jede Anfrage an eine dieser Regionen zu senden. Sie zahlen für Anfragen, aktive CPU-Zeit, den Speicherverbrauch während der Lebensdauer jeder Ausführungsumgebung und die Datenübertragung.
Themen
Wann sollten Webfunktionen verwendet werden
Verwenden Sie Webfunktionen für Workloads, die HTTP-Verkehr direkt empfangen und darauf reagieren. Häufige Anwendungsfälle umfassen:
-
Webanwendungen — Stellen Sie Full-Stack- oder Frontend-Anwendungen bereit, die HTML-, Asset- und API-Routen von einer einzigen Bereitstellung aus bereitstellen.
-
REST- und GraphQL-APIs — Erstellen Sie API-Backends, die hohe Anforderungsvolumina bedienen.
-
Microservices — Führen Sie HTTP-Dienste aus, die unabhängig vom Datenverkehr skalieren und auch im Leerlauf auf Null skalieren.
-
Server-side Rendern (SSR) — Stellt Seiten bereit, die bei der Anfrage auf dem Server gerendert werden und nicht vorkonfiguriert sind. Eine Webfunktion führt den Produktionsserver Ihres Frameworks direkt aus. Sie verarbeitet SSR-Anfragen, Streaming und API-Routen ohne separate Hosting-Ebene. Es skaliert auch mit dem Verkehr. Dies eignet sich für Anwendungen, die bei jeder Anfrage personalisierte oder sich häufig ändernde Inhalte rendern.
-
Streaming-Antworten — Streamen Sie die Ausgabe an den Client, sobald sie erstellt werden, z. B. Antworten aus einem großen Sprachmodell.
Verwenden Sie für ereignisgesteuerte Verarbeitung, z. B. die Verarbeitung von Warteschlangennachrichten oder Datei-Uploads, stattdessen Lambda Event Functions.
Anmerkung
AWS Lambda Webfunktionen unterstützen derzeit nur Laufzeiten. Node.js Wenn SieJava,Python, .NET oder eine andere Sprache verwenden, finden Sie Erstellen Sie Ihre erste Lambda-Funktion weitere Informationen unter AWS Lambda Event Functions oder AWS Lambda MicroVMs Lambda MicroVMS.
Wie funktionieren Webfunktionen
Eine Webfunktion enthält Revisionen und Endpunkte. Eine Revision ist eine unveränderliche Momentaufnahme Ihres Codes und Ihrer Konfiguration. Ein Endpunkt leitet HTTP-Anfragen an eine oder zwei Revisionen weiter. Lambda führt Ihren Server in Ausführungsumgebungen aus, die jeweils mehrere gleichzeitige Anfragen verarbeiten. Lambda skaliert diese Ausführungsumgebungen mit dem Datenverkehr. Details hierzu finden Sie unter Schlüsselkonzepte.
Wichtigste Vorteile
Webfunktionen bieten die folgenden Vorteile für Webanwendungen und API-Backends:
-
Standarderfahrung bei der Webentwicklung — Stellen Sie Node.js Standardanwendungen bereit, die auf einem Port lauschen. Sie verwenden vertraute Web-Frameworks und Ihre normale Anwendungsstruktur.
-
Adaptive Skalierung — Jede Ausführungsumgebung bedient mehrere gleichzeitige Anfragen, wie ein Standard-Webserver. Infolgedessen verarbeiten weniger Ausführungsumgebungen mehr Verkehr. Bestehende Ausführungsumgebungen können einen geringen Anstieg des Datenverkehrs auffangen, sodass weniger Anfragen auf den Start einer neuen Ausführungsumgebung warten.
-
Usage-based Abrechnung — Sie zahlen für Anfragen, die CPU-Zeit, die Ihre Anwendung und die Laufzeit aktiv verbrauchen, den Arbeitsspeicher während der gesamten Lebensdauer der einzelnen Ausführungsumgebungen und die Datenübertragung. Eine Anfrage, die auf eine Datenbankabfrage oder einen externen API-Aufruf wartet, verbraucht während der Wartezeit wenig CPU. Solange die Ausführungsumgebung existiert, nimmt jedoch weiterhin Arbeitsspeicher zu, einschließlich Leerlaufzeiten zwischen Anfragen.
-
Antwort-Streaming — Streamen Sie Antworten an Clients, während Ihre Anwendung sie generiert, ohne zusätzliche Konfiguration.
-
Auf Null skalieren — Lambda entfernt ungenutzte Ausführungsumgebungen, wenn kein Datenverkehr vorhanden ist, und erstellt neue, wenn Anfragen eintreffen. Eine Anfrage kann warten, bis eine Ausführungsumgebung initialisiert wird. Einzelheiten zur Funktionsweise von Skalierung und Drosselung finden Sie unter. Skalierungsverhalten für Lambda Web Functions
-
Built-in HTTPS-Endpunkt — Jeder Endpunkt stellt eine HTTPS-Domain mit TLS bereit. Sie wählen für jeden Endpunkt IAM-Authentifizierung oder anwendungsverwaltete Authentifizierung. Details hierzu finden Sie unter Endpunktzugriffskontrolle mit Lambda Web Function. Um eine benutzerdefinierte Domain oder einen benutzerdefinierten AWS WAF Schutz zu verwenden, stellen Sie eine CloudFront Amazon-Distribution vor den Endpunkt.
-
Endpoint-level Verkehrskontrollen — Legen Sie ein Limit für die Anforderungsrate (Anfragen pro Sekunde) für jeden HTTPS-Endpunkt fest, das Lambda in jeder Region durchsetzt, sowie eine maximale Anzahl von Ausführungsumgebungen (
maxEnvironments), die ebenfalls in jeder Region durchgesetzt wird. Zusammen können Sie damit den Traffic begrenzen, den ein Endpunkt akzeptiert. Außerdem können Sie damit einschränken, wie viel Last der Endpunkt an nachgelagerte Abhängigkeiten wie Datenbanken und externe APIs weitergibt. Weitere Informationen finden Sie unter Skalierungsverhalten für Lambda Web Functions.