View a markdown version of this page

Dauerhafte Lambda-Funktionen konfigurieren - 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.

Dauerhafte Lambda-Funktionen konfigurieren

Dauerhafte Ausführungseinstellungen steuern, wie lange Ihre Lambda-Funktion ausgeführt werden kann und wie lange der Dienst den Ausführungsverlauf beibehält. Konfigurieren Sie diese Einstellungen, um eine dauerhafte Ausführung Ihrer Funktion zu ermöglichen.

Dauerhafte Ausführung aktivieren

Konfigurieren Sie das DurableConfig Objekt bei der Erstellung Ihrer Funktion so, dass es ein Timeout für die Ausführung und die Aufbewahrung des Verlaufs festlegt. Sie können die dauerhafte Ausführung nur aktivieren, wenn Sie eine Funktion erstellen. Sie können es nicht für bestehende Funktionen aktivieren.

AWS CLI
aws lambda create-function \ --function-name my-durable-function \ --runtime nodejs24.x \ --role arn:aws:iam::123456789012:role/my-durable-role \ --handler index.handler \ --zip-file fileb://function.zip \ --durable-config '{"ExecutionTimeout": 3600, "RetentionPeriodInDays": 30}'
CloudFormation
Resources: MyDurableFunction: Type: AWS::Lambda::Function Properties: FunctionName: my-durable-function Runtime: nodejs24.x Handler: index.handler Code: ZipFile: | // Your durable function code DurableConfig: ExecutionTimeout: 3600 RetentionPeriodInDays: 30

Konfigurationsparameter:

  • ExecutionTimeout— Die maximale Zeit in Sekunden, die eine dauerhafte Ausführung ausgeführt werden kann, bevor Lambda die Ausführung stoppt. Dieses Timeout gilt für die gesamte dauerhafte Ausführung, nicht für einzelne Funktionsaufrufe. Gültiger Bereich: 1—31622400.

  • RetentionPeriodInDays— Die Anzahl der Tage, für die der Ausführungsverlauf nach Abschluss einer dauerhaften Ausführung beibehalten werden soll. Nach Ablauf dieses Zeitraums ist der Ausführungsverlauf nicht mehr über die GetDurableExecutionHistory API verfügbar. Gültiger Bereich: 1—90.

Die vollständige API-Referenz finden Sie DurableConfigin der Lambda-API-Referenz.

Bewährte Methoden für die Konfiguration

Folgen Sie diesen bewährten Methoden, wenn Sie langlebige Funktionen für den Produktionseinsatz konfigurieren:

  • Legen Sie geeignete Zeitlimits für die Ausführung fest — richten Sie die Konfiguration auf der ExecutionTimeout Grundlage der maximal zu erwartenden Dauer Ihres Workflows aus. Legen Sie keine unnötig langen Timeouts fest, da sich diese auf die Kosten und die Ressourcenzuweisung auswirken.

  • Sorgen Sie für ein ausgewogenes Verhältnis zwischen Aufbewahrung und Speicherkosten — Die Festlegung erfolgt auf der RetentionPeriodInDays Grundlage Ihrer Debugging- und Audit-Anforderungen. Längere Aufbewahrungsfristen erhöhen die Speicherkosten.

  • Statusgröße überwachen — Große Zustandsobjekte erhöhen die Speicherkosten und können die Leistung beeinträchtigen. Halten Sie den Status minimal und verwenden Sie externen Speicher für große Datenmengen.

  • Konfigurieren Sie die entsprechende Protokollierung — Aktivieren Sie die detaillierte Protokollierung zur Fehlerbehebung bei Workflows mit langer Laufzeit. Berücksichtigen Sie dabei jedoch die Auswirkungen auf das Protokollvolumen und die Kosten.

Beispiel für eine Produktionskonfiguration:

{ "ExecutionTimeout": 86400, "RetentionPeriodInDays": 7 }

In diesem Beispiel wird ein Ausführungs-Timeout von 24 Stunden (86.400 Sekunden) mit einer Aufbewahrungsfrist von 7 Tagen festgelegt, wodurch ein ausgewogenes Verhältnis zwischen Debugging-Transparenz und Speicherkosten für die meisten Produktionsworkloads erreicht wird.