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 AWS Step Functions?
AWS Step Functions ist ein serverloser Orchestrierungsservice, mit dem Sie AWS Lambda
Step Functions basiert auf Zustandsautomaten und Aufgaben. In Step Functions wird ein Workflow als Zustandsautomat bezeichnet, bei dem es sich um eine Reihe ereignisgesteuerter Schritte handelt. Jeder Schritt in einem Workflow wird als Zustand bezeichnet. Ein Aufgabe Status steht für eine Arbeitseinheit, die ein anderer AWS Dienst, z. B., ausführt. AWS Lambda Ein Task-Status kann eine AWS-Service beliebige API aufrufen.
Mit den integrierten Steuerelementen von Step Functions überprüfen Sie den Status jedes Schritts in Ihrem Workflow, um sicherzustellen, dass Ihre Anwendung ordnungsgemäß und erwartungsgemäß ausgeführt wird. Je nach Anwendungsfall können Sie Step Functions AWS Dienste wie Lambda aufrufen lassen, um Aufgaben auszuführen. Sie können Workflows erstellen, die Modelle für maschinelles Lernen verarbeiten und veröffentlichen. Sie können über Step Functions AWS Dienste steuern lassen, z. B. AWS Glue
Tipp
Um sich anhand einer Reihe interaktiver Module mit den Hauptfunktionen von Step Functions vertraut zu machen, siehe Der AWS Step Functions Workshop
Themen
AWS SDK und optimierte Integrationen
Um andere AWS Dienste aufzurufen, können Sie die AWS SDK-Integrationen von Step Functions oder eine der optimierten Integrationen von Step Functions verwenden.
-
Mit den AWS SDK-Integrationen können Sie jeden der über zweihundert AWS Dienste direkt von Ihrer Zustandsmaschine aus aufrufen, sodass Sie auf über neuntausend API-Aktionen zugreifen können.
-
Die optimierten Integrationen von Step Functions wurden angepasst, um die Verwendung in Ihren Zustandsmaschinen zu vereinfachen.
Standard- und Express-Workflows
Step Functions hat zwei Workflowtypen. 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 verfügen jedoch über eine at-least-once Workflow-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.
Ausführungen sind Instanzen, in denen Sie Ihren Workflow ausführen, um Aufgaben auszuführen. Standard-Workflows eignen sich ideal für lange laufende, überprüfbare Workflows, da sie den Ausführungsverlauf und das visuelle Debugging anzeigen. Express-Workflows eignen sich ideal für high-event-rate Workloads wie Streaming-Datenverarbeitung und IoT-Datenaufnahme.
Spezifikationen für Standard-Workflows
-
Ausführungsrate von 2.000 pro Sekunde
-
Zustandsübergangsrate von 4.000 pro Sekunde
-
Die Preise hängen vom jeweiligen Übergangsstaat ab
-
Ausführungshistorie und visuelles Debugging anzeigen
-
Support aller Serviceintegrationen und -muster
Spezifikationen für Express-Workflows
-
Ausführungsrate von 100.000 pro Sekunde
-
Nahezu unbegrenzte Zustandsübergangsrate
-
Die Preise richten sich nach Anzahl und Dauer der Hinrichtungen
-
Ausführungshistorie an Amazon
senden CloudWatch -
Zeigt den Ausführungsverlauf und das visuelle Debugging auf der Grundlage der aktivierten Protokollebene an
-
Support alle Serviceintegrationen und die meisten Muster
Weitere Informationen zu Standard- und Express-Workflows, einschließlich der Preise für Step Functions, finden Sie im Folgenden:
Anwendungsfälle
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. In diesem Abschnitt werden typische Anwendungsfälle für die Arbeit mit Step Functions beschrieben.
Anwendungsfall #1: Funktionsorchestrierung
Sie erstellen einen Workflow, der eine Gruppe von Lambda-Funktionen (Schritten) in einer bestimmten Reihenfolge ausführt. Die Ausgabe einer Lambda-Funktion geht an die Eingabe der nächsten Lambda-Funktion über. Der letzte Schritt in Ihrem Workflow liefert ein Ergebnis. Mit Step Functions können Sie sehen, wie jeder Schritt in Ihrem Workflow miteinander interagiert, sodass Sie sicherstellen können, dass jeder Schritt seine beabsichtigte Funktion erfüllt.
Ein Tutorial, das Ihnen zeigt, wie Sie eine Zustandsmaschine mit einer Gruppe von Funktionen erstellen, finden Sie im Folgenden:
Anwendungsfall #2: Verzweigung
Ein Kunde beantragt eine Erhöhung des Kreditlimits. Wenn Sie einen Choice
Status verwenden, können Sie Step Functions veranlassen, Entscheidungen auf der Grundlage der Eingaben des Choice
Status zu treffen. 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.
Anwendungsfall #3: Fehlerbehandlung
Retry
In diesem Anwendungsfall fordert ein Kunde einen Benutzernamen an. Beim ersten Mal ist die Anfrage Ihres Kunden erfolglos. Mithilfe einer Retry
Anweisung können Sie Step Functions veranlassen, die Anfrage Ihres Kunden erneut zu bearbeiten. Beim zweiten Mal ist die Anfrage Ihres Kunden erfolgreich.
Catch
In einem ähnlichen Anwendungsfall fordert ein Kunde einen nicht verfügbaren Benutzernamen an. Mithilfe einer Catch
Anweisung lassen Sie Step Functions einen verfügbaren Benutzernamen vorschlagen. Wenn Ihr Kunde den verfügbaren Benutzernamen verwendet, können Sie Step Functions zum nächsten Schritt in Ihrem Workflow übergehen lassen, dem Senden einer Bestätigungs-E-Mail. Wenn Ihr Kunde den verfügbaren Benutzernamen nicht verwendet, lassen Sie Step Functions zu einem anderen Schritt in Ihrem Workflow übergehen, nämlich den Anmeldevorgang erneut zu starten.
Detailliertere Beispiele Retry
und Catch
Aussagen finden Sie im Folgenden:
Anwendungsfall #4: Der Mensch ist auf dem Laufenden
Mit einer Banking-App sendet einer Ihrer Kunden Geld an einen Freund. Ihr Kunde wartet auf eine Bestätigungs-E-Mail. Mit einem Callback und einem Task-Token weisen Step Functions Lambda an, das Geld Ihres Kunden zu senden, und melden sich, wenn der Freund Ihres Kunden es erhält. Nachdem Lambda gemeldet hat, dass der Freund Ihres Kunden das Geld erhalten hat, können Sie Step Functions veranlassen, mit dem nächsten Schritt in Ihrem Workflow fortzufahren, dem Kunden eine Bestätigungs-E-Mail zu senden.
Ein Beispielprojekt, das einen Rückruf mit einem Task-Token zeigt, finden Sie im Folgenden:
Anwendungsfall #5: Parallele Verarbeitung
Ein Kunde konvertiert eine Videodatei in fünf verschiedene Bildschirmauflösungen, sodass Zuschauer das Video auf mehreren Geräten ansehen können. Mithilfe eines Parallel
Zustands gibt Step Functions die Videodatei ein, sodass Lambda sie gleichzeitig in die fünf Bildschirmauflösungen verarbeiten kann.
Anwendungsfall #6: Dynamische Parallelität
Ein Kunde bestellt drei Artikel, und Sie müssen jeden Artikel für die Lieferung vorbereiten. Sie überprüfen die Verfügbarkeit jedes Artikels, holen jeden Artikel ab und verpacken dann jeden Artikel für die Lieferung. Mithilfe eines Map
Zustands lässt Step Functions Lambda jeden Artikel Ihres Kunden parallel verarbeiten. Sobald alle Artikel Ihres Kunden für den Versand verpackt sind, geht Step Functions zum nächsten Schritt in Ihrem Workflow über, der darin besteht, Ihrem Kunden eine Bestätigungs-E-Mail mit Informationen zur Sendungsverfolgung zu senden.
Ein Beispielprojekt, das dynamische Parallelität anhand eines Map
Zustands zeigt, finden Sie im Folgenden:
Service-Integrationen
Step Functions lässt sich in mehrere AWS Dienste integrieren. Verwenden Sie die folgenden Dienstintegrationsmuster, um Step Functions mit diesen Diensten zu kombinieren:
Antwort anfordern (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.
Die folgende Tabelle zeigt die verfügbaren Serviceintegrationen und Serviceintegrationsmuster für Step Functions.
Standard-Workflows und Express-Workflows unterstützen dieselben Integrationen, aber nicht dieselben Integrationsmuster.
Die Unterstützung optimierter Integrationsmuster ist für jede Integration unterschiedlich.
Express-Workflows unterstützen Run a Job (.sync) oder Wait for Callback () nicht. waitForTaskToken).
Weitere Informationen finden Sie unter Standard- und Express-Workflows.
Unterstützte -Regionen
Die meisten AWS Regionen unterstützen Step Functions. Eine vollständige Liste der AWS Regionen, in denen Step Functions verfügbar ist, finden Sie AWS
in der Regionentabelle
Verwenden Sie Step Functions zum ersten Mal?
Wenn Sie Step Functions zum ersten Mal verwenden, helfen Ihnen die folgenden Themen dabei, die verschiedenen Aspekte der Arbeit mit Step Functions zu verstehen, einschließlich der Kombination von Step Functions mit anderen AWS Diensten: