Workflowtyp in Step Functions auswählen - AWS Step Functions

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 State in The Workshop. AWS Step Functions

Vergleich von Standard- und Express-Workflowtypen

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 Zustandsü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 Details zur Workflow-Ausführung in Step Functions anzeigen und. Ausführungen anzeigen und debuggen

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. Details zur Workflow-Ausführung in Step Functions anzeigen Ausführungen anzeigen und debuggen

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.
Anmerkung

Express-Workflows unterstützen keine Job-Run (.sync) - oder Callback (.waitForTaskToken) -Dienstintegrationsmuster.

Aktivitäten Unterstützt Nicht unterstützt

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 Aufruf 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 die StartSyncExecution Anfrage mit AWS SDK oder AWS Command Line Interface (AWS CLI) anstelle 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. Ein Anstieg der Arbeitslast kann 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 erstellen Sie 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.