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.
Was ist Step Functions?
Mit AWS Step Functions, können Sie Workflows, auch genannt, erstellen, um verteilte Anwendungen zu erstellenZustandsautomaten, Prozesse zu automatisieren, Microservices zu orchestrieren und Daten- und Machine-Learning-Pipelines zu erstellen.
Step Functions basiert auf Zustandsmaschinen und Aufgaben. In Step Functions werden Zustandsmaschinen als Workflows bezeichnet. Dabei handelt es sich um eine Reihe von ereignisgesteuerten Schritten. Jeder Schritt in einem Workflow wird als Status bezeichnet. Ein Aufgabenstatus steht beispielsweise für eine Arbeitseinheit und eine andere AWS führt einen Dienst aus, z. B. wenn er einen anderen aufruft AWS-Service oderAPI. Instanzen, in denen Workflows ausgeführt werden, die Aufgaben ausführen, werden in Step Functions als Ausführungen bezeichnet.
Die Aufgaben in Ihrer Zustandsmaschine können auch mit Workern erledigt werden, Aktivitäten die außerhalb von Step Functions existieren.
In der Step Functions Functions-Konsole können Sie den Arbeitsablauf Ihrer Anwendung visualisieren, bearbeiten und debuggen. Sie können den Status jedes Schritts in Ihrem Workflow überprüfen, um sicherzustellen, dass Ihre Anwendung in der richtigen Reihenfolge und wie erwartet ausgeführt wird.
Abhängig von Ihrem Anwendungsfall können Sie Step Functions aufrufen lassen AWS Dienste wie Lambda zur Ausführung von Aufgaben. Sie können Step Functions steuern lassen AWS Dienste, wie AWS Glue, um Workflows zum Extrahieren, Transformieren und Laden zu erstellen. Sie können auch lang andauernde, automatisierte Workflows für Anwendungen erstellen, die menschliche Interaktion erfordern.
Für eine vollständige Liste von AWS Regionen, in denen Step Functions verfügbar ist, finden Sie unter AWS
Tabelle mit Regionen
Erfahren Sie, wie Sie Step Functions verwenden
Um zu erfahren, wie Sie Step Functions verwenden, folgen Sie den interaktiven Modulen im Step Functions Workshop
Typen von Standard- und Express-Workflows
Step Functions hat zwei Workflowtypen:
-
Standard-Workflows eignen sich ideal für langwierige, überprüfbare Workflows, da sie den Ausführungsverlauf und das visuelle Debugging anzeigen.
Standard-Workflows werden exakt einmal ausgeführt und können bis zu einem Jahr lang ausgeführt werden. Das bedeutet, dass jeder Schritt in einem Standard-Workflow genau einmal ausgeführt wird.
-
Express-Workflows eignen sich ideal für high-event-rate Workloads wie Streaming-Datenverarbeitung und IoT-Datenaufnahme.
Express-Workflows verfügen über eine at-least-onceWorkflow-Ausführung und können bis zu fünf Minuten lang ausgeführt werden. Das bedeutet, dass ein oder mehrere Schritte in einem Express-Workflow potenziell mehrmals ausgeführt werden können, während jeder Schritt im Workflow mindestens einmal ausgeführt wird.
Standard-Workflows | Express-Workflows |
---|---|
Ausführungsrate von 2.000 pro Sekunde | Ausführungsrate von 100.000 pro Sekunde |
Zustandsübergangsrate von 4.000 pro Sekunde | Nahezu unbegrenzte staatliche Übergangsrate |
Preislich je nach staatlichem Übergang | Die Preisgestaltung richtet sich nach Anzahl und Dauer der Hinrichtungen |
Ausführungshistorie und visuelles Debugging anzeigen | Zeigt den Ausführungsverlauf und das visuelle Debugging auf Protokollebene an |
Ausführungshistorie in Step Functions anzeigen |
Sendet die Ausführungshistorie an CloudWatch |
Support Sie Integrationen mit allen Diensten. Support Sie optimierte Integrationen mit einigen Diensten. |
Support Sie Integrationen mit allen Diensten. |
Antwortmuster für Support-Anfragen für alle Dienste Support Muster „Job ausführen“ und/oder „Auf Rückruf warten“ in bestimmten Diensten (Einzelheiten finden Sie im folgenden Abschnitt) |
Antwortmuster für Support-Anfragen für alle Dienste |
Weitere Informationen zur Preisgestaltung von Step Functions und zur Auswahl des Workflow-Typs finden Sie im Folgenden:
Integration mit anderen -Services
Step Functions lässt sich in mehrere integrieren AWS Dienstleistungen. Um andere anzurufen AWS Dienste, Sie können zwei Integrationstypen verwenden:
-
AWS SDKIntegrationen bieten die Möglichkeit, beliebige aufzurufen AWS Service direkt von Ihrer Zustandsmaschine aus, sodass Sie auf Tausende von API Aktionen zugreifen können.
-
Optimierte Integrationen bieten benutzerdefinierte Optionen für die Nutzung dieser Dienste in Ihren Zustandsmaschinen.
Um Step Functions mit anderen Diensten zu kombinieren, gibt es drei Dienstintegrationsmuster:
-
Antwort auf Anfrage (Standard)
Rufen Sie einen Dienst auf und lassen Sie Step Functions zum nächsten Status übergehen, nachdem es eine HTTP Antwort erhalten hat.
-
Führen Sie einen Job aus (.sync)
Rufen Sie einen Service auf und lassen Sie Step Functions warten, bis ein Job abgeschlossen ist.
-
Warten Sie auf einen Rückruf mit einem Task-Token (. waitForTaskToken)
Rufen Sie einen Dienst mit einem Task-Token auf und lassen Sie Step Functions warten, bis das Task-Token mit einem Callback zurückkehrt.
Standard-Workflows und Express-Workflows unterstützen dieselben Integrationen, aber nicht dieselben Integrationsmuster.
-
Standard-Workflows unterstützen Request Response-Integrationen. Bestimmte Dienste unterstützen Run a Job (.sync) oder Wait for Callback (. waitForTaskToken) und in einigen Fällen beides. Einzelheiten finden Sie in der folgenden Tabelle mit optimierten Integrationen.
-
Express Workflows unterstützen nur Request Response-Integrationen.
Informationen zur Entscheidung zwischen den beiden Typen finden Sie unterWorkflowtyp in Step Functions auswählen.
AWS SDKIntegrationen in Step Functions
Integrierter Service | Request Response (Antwort anfordern) | Einen Job ausführen - .sync | Warte auf Rückruf -. waitForTaskToken |
---|---|---|---|
Über zweihundert Dienste | Standard und Express | Wird nicht unterstützt | Standard |
Optimierte Integrationen in Step Functions
Integrierter Service | Request Response (Antwort anfordern) | Einen Job ausführen - .sync | Warte auf Rückruf -. waitForTaskToken |
---|---|---|---|
Amazon API Gateway | Standard und Express | Wird nicht unterstützt | Standard |
Amazon Athena | Standard und Express | Standard | Wird nicht unterstützt |
AWS Batch | Standard und Express | Standard | Wird nicht unterstützt |
Amazon Bedrock | Standard und Express | Standard | Standard |
AWS CodeBuild | Standard und Express | Standard | Wird nicht unterstützt |
Amazon DynamoDB | Standard und Express | Wird nicht unterstützt | Wird nicht unterstützt |
Amazon ECS/Fargate | Standard und Express | Standard | Standard |
Amazon EKS | Standard und Express | Standard | Standard |
Amazon EMR | Standard und Express | Standard | Wird nicht unterstützt |
Amazon EMR on EKS | Standard und Express | Standard | Wird nicht unterstützt |
Amazon EMR Serverless | Standard und Express | Standard | Wird nicht unterstützt |
Amazon EventBridge | Standard und Express | Wird nicht unterstützt | Standard |
AWS Glue | Standard und Express | Standard | Wird nicht unterstützt |
AWS Glue DataBrew | Standard und Express | Standard | Wird nicht unterstützt |
AWS Lambda | Standard und Express | Wird nicht unterstützt | Standard |
AWS Elemental MediaConvert | Standard und Express | Standard | Wird nicht unterstützt |
Amazon SageMaker | Standard und Express | Standard | Wird nicht unterstützt |
Amazon SNS | Standard und Express | Wird nicht unterstützt | Standard |
Amazon SQS | Standard und Express | Wird nicht unterstützt | Standard |
AWS Step Functions | Standard und Express | Standard | Standard |
Beispielhafte Anwendungsfälle für Workflows
Step Functions verwaltet die Komponenten und die Logik Ihrer Anwendung, sodass Sie weniger Code schreiben und sich darauf konzentrieren können, Ihre Anwendung schnell zu erstellen und zu aktualisieren. Die folgende Abbildung zeigt sechs Anwendungsfälle für Step Functions Functions-Workflows.
-
Aufgaben orchestrieren — Sie können Workflows erstellen, die eine Reihe von Aufgaben oder Schritten in einer bestimmten Reihenfolge orchestrieren. Aufgabe A könnte beispielsweise eine Lambda-Funktion sein, die Eingaben für eine andere Lambda-Funktion in Aufgabe B bereitstellt. Der letzte Schritt in Ihrem Workflow liefert das Endergebnis.
-
Wählen Sie Aufgaben auf der Grundlage von Daten aus — Mithilfe eines
Choice
Status können Sie Step Functions veranlassen, Entscheidungen auf der Grundlage der Eingaben des Status zu treffen. Stellen Sie sich zum Beispiel vor, dass ein Kunde eine Erhöhung des Kreditlimits beantragt. Wenn die Anfrage das vorab genehmigte Kreditlimit Ihres Kunden überschreitet, können Sie Step Functions die Anfrage Ihres Kunden zur Genehmigung an einen Manager senden lassen. Wenn die Anfrage das vorab genehmigte Kreditlimit Ihres Kunden unterschreitet, können Sie festlegen, dass Step Functions die Anfrage automatisch genehmigt. -
Fehlerbehandlung (
Retry
/Catch
) — Sie können fehlgeschlagene Aufgaben wiederholen oder fehlgeschlagene Aufgaben abfangen und automatisch alternative Schritte ausführen.Wenn beispielsweise ein Kunde nach einem Benutzernamen gefragt hat, schlägt möglicherweise der erste Anruf bei Ihrem Validierungsdienst fehl, sodass Ihr Workflow die Anfrage möglicherweise erneut versucht. Wenn die zweite Anfrage erfolgreich ist, kann der Workflow fortgesetzt werden.
Oder vielleicht hat der Kunde einen Benutzernamen angefordert, der ungültig oder nicht verfügbar ist. Eine
Catch
Aussage könnte zu einem Step Functions Functions-Workflow-Schritt führen, der einen alternativen Benutzernamen vorschlägt.Beispiele für
Retry
und findenCatch
Sie unterUmgang mit Fehlern in Step Functions Functions-Workflows. -
Human in the Loop — Step Functions kann menschliche Genehmigungsschritte in den Workflow einbeziehen. Stellen Sie sich zum Beispiel vor, ein Bankkunde versucht, Geld an einen Freund zu überweisen. Mit einem Callback und einem Task-Token können Sie Step Functions warten lassen, bis der Freund des Kunden die Überweisung bestätigt, und dann setzt Step Functions den Workflow fort, um den Bankkunden darüber zu informieren, dass die Überweisung abgeschlossen ist.
Ein Beispiel finden Sie unter Erstellen Sie ein Beispiel für ein Callback-Muster mit Amazon SQSSNS, Amazon und Lambda.
-
Daten in parallel Schritten verarbeiten — Mithilfe eines
Parallel
Zustands können Step Functions Eingabedaten in parallel Schritten verarbeiten. Beispielsweise muss ein Kunde möglicherweise eine Videodatei in verschiedene Bildschirmauflösungen konvertieren, damit Zuschauer das Video auf mehreren Geräten ansehen können. Ihr Workflow könnte die ursprüngliche Videodatei an mehrere Lambda-Funktionen senden oder die optimierte AWS Elemental MediaConvert Integration zur gleichzeitigen Verarbeitung eines Videos auf mehrere Bildschirmauflösungen. -
Datenelemente dynamisch verarbeiten — Mithilfe eines
Map
Status kann Step Functions eine Reihe von Workflow-Schritten für jedes Element in einem Datensatz ausführen. Die Iterationen laufen parallel, was eine schnelle Verarbeitung eines Datensatzes ermöglicht. Wenn Ihr Kunde beispielsweise dreißig Artikel bestellt, muss Ihr System denselben Workflow anwenden, um jeden Artikel für die Lieferung vorzubereiten. Nachdem alle Artikel gesammelt und für den Versand verpackt wurden, besteht der nächste Schritt möglicherweise darin, Ihrem Kunden schnell eine Bestätigungs-E-Mail mit Informationen zur Sendungsverfolgung zu senden.Ein Beispiel für eine Startvorlage finden Sie unterDaten mit einer Map verarbeiten.