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.
Workflowtyp in Step Functions auswählen
Wenn Sie eine Zustandsmaschine erstellen, wählen Sie entweder den Typ Standard oder Express aus. Der Standardtyp für Zustandsmaschinen ist Standard. Eine Zustandsmaschine, deren Typ Standard ist, wird als Standard-Workflow bezeichnet, und eine Zustandsmaschine, deren Typ Express ist, wird als Express-Workflow bezeichnet.
Sowohl für Standard- als auch für Express-Workflows definieren Sie Ihre Zustandsmaschine mithilfe vonVerwendung von Amazon States Language zur Definition von Step Functions Functions-Workflows. Ihre State-Machine-Ausführungen verhalten sich je nach Typ, den Sie auswählen, unterschiedlich.
Wichtig
Der Workflowtyp, den Sie wählen, kann nicht geändert werden, nachdem Sie den Zustandsmaschine erstellt haben.
Standard- und Express-Workflows können automatisch als Reaktion auf Ereignisse wie HTTP Anfragen von Amazon API Gateway (in großem Umfang vollständig verwaltetAPIs), IoT-Regeln und über 140 anderen Ereignisquellen in Amazon EventBridge gestartet werden.
Standard-Workflows eignen sich ideal für lang andauernde (bis zu einem Jahr), dauerhafte und überprüfbare Workflows. Sie können den vollständigen Ausführungsverlauf mit den Step Functions API bis zu 90 Tage nach Abschluss Ihrer Ausführung abrufen. Standard-Workflows folgen einem Exactly-Once-Modell, bei dem Ihre Aufgaben und Status nie mehr als einmal ausgeführt werden, es sei denn, Sie haben ein bestimmtes Verhalten in angegebenRetry
. ASL Dadurch eignen sich Standard-Workflows für die Orchestrierung nicht idempotenter Aktionen wie das Starten eines EMR Amazon-Clusters oder die Verarbeitung von Zahlungen. Standard-Workflow-Ausführungen werden nach der Anzahl der verarbeiteten Statusübergänge abgerechnet.
Express-Workflows eignen sich ideal für umfangreiche, ereignisverarbeitende Workloads wie IoT-Datenerfassung, Streaming-Datenverarbeitung und -transformation sowie Backends für mobile Anwendungen. Sie können bis zu fünf Minuten lang ausgeführt werden. Express Workflows verwenden ein at-least-onceModell, bei dem eine Ausführung möglicherweise mehr als einmal ausgeführt werden kann. Dadurch eignet sich Express Workflows ideal für die Orchestrierung idempotenter Aktionen wie das Transformieren von Eingabedaten und das Speichern als PUT Aktion in Amazon DynamoDB. Express-Workflow-Ausführungen werden nach der Anzahl der Ausführungen, der Gesamtdauer der Ausführung und dem während der Ausführung verbrauchten Speicher abgerechnet.
Tipp
Ein Beispiel für einen Express-Workflow finden Sie unter Parallel
Vergleich von Standard- und Express-Workflow-Typen
Typ/Kategorie | Standard-Workflows | Express-Workflows: Synchron und asynchron |
---|---|---|
Maximale Dauer | Ein Jahr | Fünf Minuten |
Unterstützte Ausführungsstartrate |
Informationen zu Kontingenten im Zusammenhang mit der unterstützten Ausführungsstartrate finden Sie unterKontingente im Zusammenhang mit der Drosselung von API Maßnahmen. |
Informationen zu Kontingenten im Zusammenhang mit der unterstützten Ausführungsstartrate finden Sie unterKontingente im Zusammenhang mit der Drosselung von API Maßnahmen. |
Unterstützte Zustandsübergangsrate |
Informationen zu Kontingenten im Zusammenhang mit der Rate unterstützter Statusübergänge finden Sie unterKontingente im Zusammenhang mit staatlicher Drosselung. |
Kein Limit |
Preise |
Die Preise richten sich nach der Anzahl der staatlichen Übergänge. Ein Zustandsübergang wird jedes Mal gezählt, wenn ein Schritt in Ihrer Ausführung abgeschlossen ist. | Die Kosten richten sich nach der Anzahl der von Ihnen ausgeführten Ausführungen sowie deren Dauer und Speicherverbrauch. |
Ausführungsverlauf |
Ausführungen können mit Step Functions APIs aufgelistet und beschrieben werden. Ausführungen können visuell über die Konsole debuggt werden. Sie können auch in CloudWatch Logs eingesehen werden, indem Sie die Protokollierung auf Ihrem State-Computer aktivieren. Weitere Informationen zum Debuggen von Standard-Workflow-Ausführungen in der Konsole finden Sie unter Bei Standard- und Express-Konsolen treten Unterschiede auf und. Workflow-Läufe anzeigen |
Unbegrenzter Ausführungsverlauf, d. h. es werden so viele Ausführungshistorieeinträge verwaltet, wie Sie innerhalb eines Zeitraums von 5 Minuten generieren können. Ausführungen können in CloudWatch Logs oder in der Step Functions Functions-Konsole überprüft werden, indem Sie die Protokollierung auf Ihrer Zustandsmaschine aktivieren. Weitere Informationen zum Debuggen von Express Workflow-Ausführungen in der Konsole finden Sie unter und. Bei Standard- und Express-Konsolen treten Unterschiede auf Workflow-Läufe anzeigen |
Ausführungssemantik | Workflow-Ausführung exakt einmal. | Asynchrone Express-Workflows: Eine Workflow-Ausführung. t-least-once Synchrone Express-Workflows: Eine t-most-once Workflow-Ausführung. |
Service-Integrationen | Unterstützt alle Service-Integrationen und -Muster. | Unterstützt alle Service-Integrationen. AnmerkungExpress-Workflows unterstützen keine Job-Run ( |
Verteilte Karte | Unterstützt | Nicht unterstützt |
Aktivitäten | Unterstützt | Nicht unterstützt |
Optimieren Sie den Workflow-Typ
Im Workshop zur Verarbeitung umfangreicher Daten finden Sie im Modul Auswahl des Workflowtyps (Workshop)
Synchrone und asynchrone Express-Workflows in Step Functions
Sie können zwischen zwei Arten von Express-Workflows wählen: asynchrone Express-Workflows und synchrone Express-Workflows.
-
Asynchrone Express-Workflows geben eine Bestätigung zurück, dass der Workflow gestartet wurde, warten aber nicht, bis der Workflow abgeschlossen ist. Um das Ergebnis zu erhalten, müssen Sie die CloudWatch Protokolle des Dienstes abfragen. Sie können Asynchrone Express-Workflows verwenden, wenn Sie keine sofortige Antwortausgabe benötigen, z. B. bei Nachrichtendiensten oder Datenverarbeitung, von der andere Dienste nicht abhängig sind. Sie können asynchrone Express-Workflows als Reaktion auf ein Ereignis, durch einen verschachtelten Workflow in Step Functions oder mithilfe des
StartExecution
API Aufrufs starten. -
Synchrone Express-Workflows starten einen Workflow, warten, bis er abgeschlossen ist, und geben dann das Ergebnis zurück. Synchrone Express-Workflows können zur Orchestrierung von Microservices verwendet werden. Mit Synchronous Express Workflows können Sie Anwendungen entwickeln, ohne zusätzlichen Code entwickeln zu müssen, um Fehler zu behandeln, Wiederholungsversuche durchzuführen oder parallel Aufgaben auszuführen. Sie können synchrone Express-Workflows ausführen, die von Amazon API Gateway aus aufgerufen werden. AWS Lambda, oder indem Sie den
StartSyncExecution
API Anruf verwenden.Anmerkung
Wenn Sie Step Functions Express Workflows synchron von der Konsole aus ausführen, läuft die
StartSyncExecution
Anforderung nach 60 Sekunden ab. Um die Express Workflows synchron für eine Dauer von bis zu fünf Minuten auszuführen, stellen Sie dieStartSyncExecution
Anfrage mit dem AWS SDKoder AWS Command Line Interface (AWS CLI) statt der Step Functions Functions-Konsole.Synchrone API Express-Ausführungsrufe tragen nicht zu den bestehenden Kapazitätsgrenzen für Konten bei. Step Functions stellt Kapazität nach Bedarf bereit und skaliert automatisch bei anhaltender Arbeitslast. Überlastungen können gedrosselt werden, bis Kapazität verfügbar ist.
Ausführungsgarantien in Step Functions Functions-Workflows
Standard-Workflows | Asynchrone Express-Workflows | Synchrone Express-Workflows |
---|---|---|
Workflow-Ausführung exakt einmal | Eine Workflow-Ausführung t-least-once | Eine t-most-once Workflow-Ausführung |
Der Ausführungsstatus bleibt intern zwischen Statusübergängen bestehen. | Der Ausführungsstatus bleibt zwischen Statusübergängen nicht bestehen. | Der Ausführungsstatus bleibt zwischen Statusübergängen nicht bestehen. |
Gibt automatisch eine idempotente Antwort zurück, wenn eine Ausführung mit demselben Namen wie ein aktuell ausgeführter Workflow gestartet wird. Der neue Workflow startet nicht und es wird eine Ausnahme ausgelöst, sobald der aktuell ausgeführte Workflow abgeschlossen ist. | Idempotenz wird nicht automatisch behandelt. Das Starten mehrerer Workflows mit demselben Namen führt zu gleichzeitigen Ausführungen. Kann zum Verlust des internen Workflow-Status führen, wenn die Zustandsmaschinenlogik nicht idempotent ist. | Idempotenz wird nicht automatisch verwaltet. Step Functions wartet, sobald eine Ausführung gestartet wird, und gibt nach Abschluss das Ergebnis der Zustandsmaschine zurück. Workflows werden nicht neu gestartet, wenn eine Ausnahme auftritt. |
Die Daten zum Ausführungsverlauf wurden nach 90 Tagen entfernt. Workflow-Namen können nach dem Entfernen von out-of-date Ausführungsdaten wiederverwendet werden. Um die Einhaltung gesetzlicher, organisatorischer oder behördlicher Anforderungen zu erfüllen, können Sie die Aufbewahrungsfrist für den Ausführungsverlauf auf 30 Tage reduzieren, indem Sie eine Kontingentanfrage senden. Verwenden Sie dazu den AWS Support Center Console und erstelle einen neuen Fall. |
Der Ausführungsverlauf wird nicht von Step Functions erfasst. Die Protokollierung muss über Amazon CloudWatch Logs aktiviert werden. | Der Ausführungsverlauf wird nicht von Step Functions erfasst. Die Protokollierung muss über Amazon CloudWatch Logs aktiviert werden. |