Verwaltung von Lambda-Workflows und -Ereignissen - AWS Lambda

Verwaltung von Lambda-Workflows und -Ereignissen

Bei der Erstellung von Serverless-Anwendungen mit Lambda sind häufig Möglichkeiten zur Orchestrierung der Funktionsausführung und zur Verarbeitung von Ereignissen erforderlich. AWS bietet zwei wichtige Services die bei der Koordinierung von Lambda-Funktionen helfen:

  • AWS Step Functions für Workflow-Orchestrierung

  • Amazon EventBridge Scheduler und Amazon EventBridge für Ereignismanagement

Darüber hinaus können Sie Step Functions und EventBridge zusammen in Ihre Anwendungen integrieren. Sie können beispielsweise EventBridge Scheduler verwenden, um Step-Functions-Workflows auszulösen, wenn bestimmte Ereignisse eintreten, oder Step-Functions-Workflows so konfigurieren, dass Ereignisse an definierten Ausführungspunkten an EventBridge Scheduler veröffentlicht werden. Die folgenden Themen in diesem Abschnitt enthalten weitere Informationen zur Verwendung dieser Services.

Orchestrierung von Workflows mit Step Functions

AWS Step Functions ist ein Workflow-Orchestrierungsservice, mit dem Sie mehrere Lambda-Funktionen und andere AWS-Services zu strukturierten Workflows koordinieren können. Diese Workflows können den Status beibehalten, Fehler mit ausgeklügelten Wiederholungsmechanismen behandeln und Daten in großem Umfang verarbeiten.

Step Functions bietet zwei Arten von Workflows für unterschiedliche Orchestrierungsanforderungen:

Standard-Workflows

Ideal für lang laufende, überprüfbare Workflows, die eine Semantik erfordern, die nur einmal ausgeführt wird. Standard-Workflows können bis zu einem Jahr lang ausgeführt werden, bieten einen detaillierten Ausführungsverlauf und unterstützen visuelles Debugging. Sie eignen sich für Prozesse wie Auftragsabwicklung, Datenverarbeitungspipelines oder mehrstufige Analytikaufgaben.

Express-Workflows

Entwickelt für Workloads mit hoher Ereignisrate und kurzer Dauer mit Semantik, die mindestens einmal ausgeführt werden muss. Express-Workflows können bis zu fünf Minuten lang ausgeführt werden und eignen sich ideal für die Verarbeitung großer Ereignismengen, Streamingdatentransformationen oder IoT-Datenerfassungsszenarien. Sie bieten einen höheren Durchsatz und potenziell geringere Kosten im Vergleich zu Standard-Workflows.

Anmerkung

Weitere Informationen zu den Workflow-Typen von Step Functions finden Sie unter Auswahl des Workflow-Typs in Step Functions.

Innerhalb dieser Workflows bietet Step Functions zwei Arten von Kartenstatus für die parallele Verarbeitung:

Inline Map

Verarbeitet Elemente aus einem JSON-Array innerhalb des Ausführungsverlaufs des übergeordneten Workflows. Inline Map unterstützt bis zu 40 gleichzeitige Iterationen und eignet sich für kleinere Datensätze oder wenn Sie die gesamte Verarbeitung innerhalb einer einzigen Ausführung durchführen müssen. Weitere Informationen finden Sie unter Verwenden des Kartenstatus im Inline-Modus.

Distributed Map

Ermöglicht die Verarbeitung großer paralleler Workloads durch Iteration über Datensätze, die 256 KiB überschreiten oder mehr als 40 gleichzeitige Iterationen erfordern. Mit Unterstützung für bis zu 10 000 parallele untergeordnete Workflow-Ausführungen eignet sich Distributed Map hervorragend für die Verarbeitung von semistrukturierten Daten, die in Amazon S3 gespeichert sind, wie z. B. JSON- oder CSV-Dateien, und ist somit ideal für die Stapelverarbeitung und ETL-Vorgänge. Weitere Informationen finden Sie unter Verwenden des Kartenstatus im Distributed-Modus.

Durch die Kombination dieser Workflow-Typen und Kartenstatus bietet Step Functions ein flexibles und leistungsstarkes Toolset für die Orchestrierung komplexer Serverless-Anwendungen, von kleinen Vorgängen bis hin zu großen Datenverarbeitungspipelines.

Informationen zu den ersten Schritten mit Lambda mit Step Functions finden Sie unter Orchestrieren von Lambda-Funktionen mit Step Functions.

Verwalten von Ereignissen mit EventBridge und EventBridge Scheduler

Amazon EventBridge ist ein Event Bus-Service, mit dem Sie ereignisgesteuerte Architekturen erstellen können. Er leitet Ereignisse zwischen AWS-Services, integrierten Anwendungen und Software as a Service (SaaS)-Anwendungen weiter. EventBridge Scheduler ist ein Serverless-Scheduler, mit dem Sie Aufgaben über einen zentralen Service erstellen, ausführen und verwalten können. So können Sie Lambda-Funktionen nach einem Zeitplan mit Cron- und Rate-Ausdrücken aufrufen oder einmalige Aufrufe konfigurieren.

Amazon EventBridge und EventBridge Scheduler unterstützen Sie beim Aufbau ereignisgesteuerter Architekturen mit Lambda. EventBridge leitet Ereignisse zwischen AWS-Services, integrierten Anwendungen und SaaS-Anwendungen weiter, während EventBridge Scheduler spezielle Planungsfunktionen für den wiederkehrenden oder einmaligen Aufruf von Lambda-Funktionen bietet.

Diese Services bieten mehrere wichtige Funktionen für die Arbeit mit Lambda-Funktionen:

  • Erstellen Sie Regeln, die Ereignisse abgleichen und mithilfe von EventBridge an Lambda-Funktionen weiterleiten.

  • Richten Sie wiederkehrende Funktionsaufrufe mithilfe von Cron- und Rate-Ausdrücken mit EventBridge Scheduler ein.

  • Konfigurieren Sie einmalige Funktionsaufrufe zu bestimmten Daten und Uhrzeiten.

  • Definieren Sie flexible Zeitfenster und Wiederholungsrichtlinien für geplante Aufrufe.

Weitere Informationen finden Sie unter Aufrufen einer Lambda-Funktion nach einem Zeitplan.