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.
Langlebige Lambda-Funktionen
Mit den dauerhaften Lambda-Funktionen können Sie belastbare mehrstufige Anwendungen und KI-Workflows erstellen, die bis zu einem Jahr lang ausgeführt werden können und gleichzeitig trotz Unterbrechungen einen zuverlässigen Fortschritt gewährleisten. Wenn eine dauerhafte Funktion ausgeführt wird, wird dieser gesamte Lebenszyklus als dauerhafte Ausführung bezeichnet. Dabei werden anhand von Prüfpunkten der Fortschritt verfolgt und bei Ausfällen automatisch die Wiederherstellung durch Wiederholung wiederhergestellt, wobei von Anfang an erneut ausgeführt wird, während abgeschlossene Arbeiten übersprungen werden.
In jeder Funktion verwenden Sie dauerhafte Betriebsabläufe als grundlegende Bausteine. Schritte führen Geschäftslogik mit integrierten Wiederholungsversuchen und Fortschrittsverfolgung aus, während Wartezeiten die Ausführung aussetzen, ohne dass Rechenkosten anfallen. Dadurch eignen sie sich ideal für lang andauernde Prozesse wie human-in-the-loop Workflows oder das Abfragen externer Abhängigkeiten. Ganz gleich, ob Sie Bestellungen bearbeiten, Microservices koordinieren oder KI-Anwendungen orchestrieren — langlebige Funktionen behalten den Status automatisch bei und stellen sich nach Ausfällen wieder her, während Sie Code in vertrauten Programmiersprachen schreiben.
Wichtigste Vorteile
Schreiben Sie auf natürliche Weise belastbaren Code: Mit vertrauten Programmierkonstrukten schreiben Sie Code, der Fehler automatisch behandelt. Integriertes Checkpointing, transparente Wiederholungsversuche und automatische Wiederherstellung sorgen dafür, dass Ihre Geschäftslogik sauber und zielgerichtet bleibt.
Zahlen Sie nur für das, was Sie tatsächlich nutzen: Während Wartezeiten wird Ihre Funktion unterbrochen, ohne dass Rechenkosten anfallen. Bei Workflows mit langer Laufzeit, die Stunden oder Tage warten, zahlen Sie nur für die tatsächliche Bearbeitungszeit, nicht für ungenutzte Wartezeiten.
Einfache Bedienung: Das serverlose Modell von Lambda ermöglicht automatische Skalierung scale-to-zero, auch ohne Verwaltung der Infrastruktur. Zuverlässige Funktionen kümmern sich automatisch um die Statusverwaltung, die Wiederholungslogik und die Wiederherstellung nach einem Ausfall, wodurch der Betriebsaufwand reduziert wird.
Wann sollten langlebige Funktionen verwendet werden
Kurzlebige Koordination: Koordinieren Sie Zahlungen, Inventar und Versand für mehrere Dienste mit automatischem Rollback bei Ausfällen. Bearbeiten Sie Bestellungen durch Validierung, Zahlungsautorisierung, Inventarzuweisung und Erfüllung mit garantierter Fertigstellung.
Zuverlässige Zahlungsabwicklung: Sorgen Sie für stabile Zahlungsabläufe, die den Transaktionsstatus auch bei Ausfällen aufrechterhalten und Wiederholungsversuche automatisch abwickeln. Koordinieren Sie mehrstufige Autorisierung, Betrugskontrollen und Abrechnung zwischen den Zahlungsanbietern mit vollständiger Überprüfbarkeit aller Schritte.
Erstellen Sie zuverlässige KI-Workflows: Erstellen Sie mehrstufige KI-Workflows, die Modellanrufe verketten, menschliches Feedback einbeziehen und bei Ausfällen lang andauernde Aufgaben deterministisch abwickeln. Fahren Sie nach einer Unterbrechung automatisch fort und zahlen Sie nur für die aktive Ausführungszeit.
Orchestrieren Sie die komplexe Auftragsabwicklung: Koordinieren Sie die Auftragsabwicklung in allen Bestands-, Zahlungs-, Versand- und Benachrichtigungssystemen mit integrierter Ausfallsicherheit. Behandeln Sie Teilausfälle automatisch, behalten Sie den Auftragsstatus trotz Unterbrechungen bei und warten Sie effizient auf externe Ereignisse, ohne Rechenressourcen zu verbrauchen.
Automatisieren Sie mehrstufige Geschäftsabläufe: Erstellen Sie zuverlässige Workflows für das Onboarding von Mitarbeitern, die Genehmigung von Krediten und die Einhaltung gesetzlicher Vorschriften, die sich über Tage oder Wochen erstrecken. Behalten Sie den Workflow-Status bei personellen Genehmigungen, Systemintegrationen und geplanten Aufgaben bei und sorgen Sie gleichzeitig für einen vollständigen Überblick über den Prozessstatus und die Historie.
Wie langlebige Funktionen im Vergleich zu Step Functions abschneiden
Sowohl langlebige Funktionen als auch Step Functions bieten Workflow-Orchestrierung mit automatischem Statusmanagement. Die wichtigsten Unterschiede bestehen darin, wo sie ausgeführt werden und wie Sie Workflows definieren:
-
Dauerhafte Funktionen: Ausführung in Lambda, Verwendung von Standardprogrammiersprachen, Verwaltung in der Lambda-Umgebung
-
Step Functions: Eigenständiger Service, grafisches DSL oder visueller Designer, vollständig verwaltet und wartungsfrei
Dauerhafte Funktionen eignen sich ideal für die Anwendungsentwicklung in Lambda, wo Workflows eng mit der Geschäftslogik verknüpft sind. Step Functions zeichnet sich durch die AWS dienstübergreifende Workflow-Orchestrierung aus, bei der Sie visuelles Design, native Integrationen für mehr als 220 Dienste und eine wartungsfreie Infrastruktur benötigen.
Einen ausführlichen Vergleich finden Sie unter Durable-Funktionen oder Step Functions.
Funktionsweise
Unter der Haube sind langlebige Funktionen reguläre Lambda-Funktionen, die einen checkpoint/replay Mechanismus verwenden, um den Fortschritt zu verfolgen und lang andauernde Operationen über benutzerdefinierte Aufhängungspunkte zu unterstützen, die allgemein als langlebige Ausführung bezeichnet werden. Wenn eine dauerhafte Funktion nach einem Wartezeitpunkt oder einer Unterbrechung wie Wiederholungsversuchen wieder aufgenommen wird, führt das System eine Wiederholung durch. Während der Wiedergabe wird Ihr Code von Anfang an ausgeführt, überspringt jedoch abgeschlossene Prüfpunkte und verwendet gespeicherte Ergebnisse, anstatt abgeschlossene Operationen erneut auszuführen. Dieser Wiedergabemechanismus gewährleistet Konsistenz und ermöglicht gleichzeitig Ausführungen mit langer Laufzeit.
Nachdem Ihre Funktion nach einer Pause oder Unterbrechung wieder aufgenommen wurde, führt das System eine Wiederholung durch. Während der Wiedergabe wird Ihr Code von Anfang an ausgeführt, überspringt jedoch abgeschlossene Prüfpunkte und verwendet gespeicherte Ergebnisse, anstatt abgeschlossene Operationen erneut auszuführen. Dieser Wiedergabemechanismus gewährleistet Konsistenz und ermöglicht gleichzeitig Ausführungen mit langer Laufzeit.
Um diesen checkpoint-and-replay Mechanismus in Ihren Anwendungen zu nutzen, bietet Lambda ein langlebiges Ausführungs-SDK. Das SDK reduziert die Komplexität der Verwaltung von Checkpoints und der Wiedergabe und macht einfache Primitive verfügbar, die als dauerhafte Operationen bezeichnet werden und die Sie in Ihrem Code verwenden. Das SDK ist für JavaScript TypeScript, und Python verfügbar und lässt sich nahtlos in Ihren bestehenden Lambda-Entwicklungsworkflow integrieren.
Mit dem SDK umschließen Sie Ihren Lambda-Event-Handler, der dann DurableContext neben Ihrem Event einen bereitstellt. Dieser Kontext ermöglicht Ihnen den Zugriff auf dauerhafte Operationen wie Steps und Waits. Sie schreiben Ihre Funktionslogik als normalen sequentiellen Code, aber anstatt Dienste direkt aufzurufen, unterteilen Sie diese Aufrufe in Schritte, um automatische Checkpoints und Wiederholungen zu ermöglichen. Wenn Sie die Ausführung unterbrechen müssen, fügen Sie Wartezeiten hinzu, die Ihre Funktion unterbrechen, ohne dass Gebühren anfallen. Das SDK kümmert sich um die gesamte Komplexität der Statusverwaltung und Wiedergabe hinter den Kulissen, sodass Ihr Code sauber und lesbar bleibt.