Antwortstreaming für Lambda-Funktionen - AWS Lambda

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.

Antwortstreaming für Lambda-Funktionen

Sie können Ihre Lambda-Funktions-URLs so konfigurieren, dass sie Antwort-Nutzlasten zurück an Clients streamen. Antwort-Streaming kann für latenzempfindliche Anwendungen von Vorteil sein, da es die Leistung in der Zeit bis zum ersten Byte (TTFB) verbessert. Dies liegt daran, dass Sie Teilantworten an den Client zurücksenden können, sobald sie verfügbar sind. Darüber hinaus können Sie Response-Streaming verwenden, um Funktionen zu erstellen, die größere Nutzlasten zurückgeben. Die Nutzlasten von Antwortstreams haben ein Soft-Limit von 20 MB im Vergleich zu den 6 MB für gepufferte Antworten. Das Streameng einer Antwort bedeutet auch, dass Ihre Funktion nicht die gesamte Antwort im Speicher unterbringen muss. Bei sehr großen Antworten kann dies die Menge des Speichers reduzieren, die Sie für Ihre Funktion konfigurieren müssen.

Die Geschwindigkeit, mit der Lambda Ihre Antworten streamt, hängt von der Größe der Antwort ab. Die Streaming-Rate für die ersten 6 MB der Antwort Ihrer Funktion ist nicht begrenzt. Bei Antworten, die größer als 6 MB sind, gilt für den Rest der Antwort eine Bandbreitenbegrenzung. Weitere Informationen zur Streaming-Bandbreite finden Sie unter Bandbreitenbegrenzung für Antwort-Streaming.

Das Streamen von Antworten ist mit Kosten verbunden. Weitere Informationen finden Sie unter AWS Lambda-Preisgestaltung.

Lambda unterstützt Antwortstreaming auf verwalteten Laufzeiten von Node.js. Für andere Sprachen können Sie eine benutzerdefinierte Laufzeit auch mit einer benutzerdefinierten Laufzeit-API-Integration verwenden, um Antworten zu streamen, oder den Lambda Web Adapter verwenden. Sie können Antworten über Lambda-Funktions-URLs, das AWS-SDK oder über die Lambda-API InvokeWithResponseStream streamen.

Anmerkung

Wenn Sie Ihre Funktion über die Lambda-Konsole testen, werden die Antworten immer gepuffert angezeigt.

Bandbreitenbegrenzung für Antwort-Streaming

Für die ersten 6 MB der Nutzlast Ihrer Funktion gibt es keine Bandbreitenbegrenzung. Nach diesem ersten Burst streamt Lambda Ihre Antwort mit einer maximalen Rate von 2 MB/s. Wenn Ihre Funktionsantworten nie größer als 6 MB sind, gilt diese Bandbreitenbegrenzung nicht.

Anmerkung

Bandbreitenbegrenzungen gelten nur für die Antwortnutzlast Ihrer Funktion und nicht für den Netzwerkzugriff durch Ihre Funktion.

Die Rate der unbegrenzten Bandbreite hängt von einer Reihe von Faktoren ab, einschließlich der Verarbeitungsgeschwindigkeit Ihrer Funktion. Normalerweise können Sie für die ersten 6 MB der Antwort Ihrer Funktion eine Rate von mehr als 2 MB/s erwarten. Wenn Ihre Funktion eine Antwort an ein Ziel außerhalb von AWS streamt, hängt die Streaming-Rate auch von der Geschwindigkeit der externen Internetverbindung ab.