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.
Entwicklung von Workflows mit Step Functions
Wir empfehlen, mit der Erstellung von Workflows in der Step Functions Functions-Konsole und dem visuellen Editor von Workflow Studio zu beginnen. Sie können mit einer leeren Arbeitsfläche beginnen oder Startvorlagen für allgemeine Szenarien auswählen.
Für die Erstellung Ihrer Workflows sind die folgenden Aufgaben erforderlich:
-
Definieren Sie Ihren Workflow
-
Ihren Workflow ausführen und debuggen
-
Bereitstellen Ihres Workflows
Sie definieren eine Zustandsmaschine in der Sprache Amazon States. Sie können Ihre Amazon States-Sprachdefinitionen manuell erstellen, Workflow Studio wird jedoch in Tutorials vorgestellt. Mit Workflow Studio können Sie Ihre Maschinendefinition definieren, die Schritte visualisieren und bearbeiten, Ihren Workflow ausführen und debuggen und die Ergebnisse anzeigen — alles von der Step Functions Functions-Konsole aus.
Sie können auch viele Funktionen von Step Functions aus AWS Command Line Interface (AWS CLI) verwenden. Sie können beispielsweise eine Zustandsmaschine erstellen und Ihre vorhandenen Zustandsmaschinen auflisten. Sie können Step Functions Functions-Befehle in verwenden, AWS CLI um Ausführungen zu starten und zu verwalten, Aktivitäten abzufragen, Task-Heartbeats aufzuzeichnen und vieles mehr. Eine vollständige Liste der Step Functions Functions-Befehle, Beschreibungen der verfügbaren Argumente und Beispiele für ihre Verwendung finden Sie in der AWS CLI Befehlsreferenz. AWS CLI Befehlsreferenz
AWS CLI Die Befehle orientieren sich eng an der Sprache von Amazon States, sodass Sie die verwenden können, AWS CLI um mehr über die Step Functions API Functions-Aktionen zu erfahren. Sie können Ihr vorhandenes API Wissen auch nutzen, um Codeprototypen zu erstellen oder Step Functions Functions-Aktionen von der Befehlszeile aus auszuführen.
Validierung von State-Machine-Definitionen
Sie können den verwendenAPI, um Zustandsmaschinen zu validieren und potenzielle Probleme zu finden, bevor Sie Ihren Workflow erstellen.
Weitere Informationen zur Validierung von Workflows finden Sie ValidateStateMachineDefinitionin der Step Functions API Reference.
Um mit minimalem Setup zu beginnen, können Sie dem Tutorial Creating a Lambda State Machine folgen, das Ihnen zeigt, wie Sie einen Workflow mit einem einzigen Schritt definieren, der eine Lambda-Funktion aufruft, dann den Workflow ausführen und die Ergebnisse anzeigen.
Definieren Sie Ihren Workflow
Der erste Schritt bei der Entwicklung Ihres Workflows besteht darin, die Schritte in der Sprache von Amazon States zu definieren. Je nach Ihren Vorlieben und Ihrem Tool können Sie Ihre Step Functions Functions-Zustandsmaschinen in JSONYAML, oder als stringifizierte Amazon States Language (ASL) -Definition definieren.
Die folgende Tabelle zeigt die Unterstützung von ASL basierten Definitionsformaten nach Tools.
AWS Werkzeug | Unterstützte (s) Format (e) |
---|---|
Step Functions Functions-Konsole | JSON |
HTTPSBedienung API | Stringifiziert ASL |
AWS CLI | Stringifiziert ASL |
Step Functions Lokal | Stringifiziert ASL |
AWS Toolkit for Visual Studio Code | JSON, YAML |
AWS SAM | JSON, YAML |
AWS CloudFormation | JSON,YAML, Stringifiziert ASL |
YAMLeinzeilige Kommentare in der State-Machine-Definition einer Vorlage werden nicht in die Definition der erstellten Ressource übernommen. Wenn Sie einen Kommentar beibehalten müssen, sollten Sie die Comment
Eigenschaft in der State-Machine-Definition verwenden. Weitere Informationen finden Sie unter Struktur der Zustandsmaschine.
Mit AWS CloudFormation und AWS SAM können Sie Ihre State-Machine-Definitionen in Amazon S3 (JSONoder YAML Format) hochladen und den Amazon S3 S3-Speicherort der Definition in der Vorlage angeben. Weitere Informationen finden Sie auf der AWSSeite:StepFunctions::: StateMachine S3Location.
Die folgenden AWS CloudFormation Beispielvorlagen zeigen, wie Sie dieselbe State-Machine-Definition mithilfe verschiedener Eingabeformate bereitstellen können.
Entwickeln Sie Workflows mit AWS SDKs
Step Functions wird von der AWS SDKs für Java unterstützt,. NET, RubyPHP, Python (Boto 3) JavaScript, Go und C++. Diese SDKs bieten eine bequeme Möglichkeit, die Step HTTPS API Functions-Aktionen in mehreren Programmiersprachen zu verwenden. Mithilfe der in diesen SDK Bibliotheken bereitgestellten API Aktionen können Sie Zustandsmaschinen, Aktivitäten oder Zustandsmaschinen-Starter entwickeln. Mithilfe dieser Bibliotheken können Sie auch auf Sichtbarkeitsoperationen zugreifen, um Ihre eigenen Überwachungs- und Berichtstools von Step Functions zu entwickeln. In der Referenzdokumentation finden Sie die aktuelle Version AWS SDKs und die Tools für Amazon Web Services
Entwickeln Sie Workflows anhand von HTTPS Anfragen
Step Functions bietet Serviceoperationen, auf die über HTTPS Anfragen zugegriffen werden kann. Sie können diese Operationen verwenden, um direkt mit Step Functions aus Ihren eigenen Bibliotheken zu kommunizieren. Mithilfe der API Serviceaktionen können Sie Zustandsmaschinen, Worker oder State-Machine-Starter entwickeln. Sie können über die API Aktionen auch auf Transparenzoperationen zugreifen, um Ihre eigenen Überwachungs- und Berichtstools zu entwickeln. Einzelheiten finden Sie in der AWS Step Functions APIReferenz.
Entwickeln Sie Workflows mit AWS Step Functions Data Science SDK
Datenwissenschaftler können Workflows erstellen, die mithilfe von SageMaker KI und Step Functions Modelle für maschinelles Lernen verarbeiten und veröffentlichen. Sie können auch mehrstufige Workflows für maschinelles Lernen in Python erstellen, die die AWS Infrastruktur in großem Umfang orchestrieren. AWS Step Functions Data Science SDK stellt ein Python bereitAPI, mit dem Step Functions Functions-Workflows erstellt und aufgerufen werden können. Sie können diese Workflows direkt in Python sowie in Jupyter-Notebooks verwalten und ausführen. Weitere Informationen finden Sie unter: AWS Step Functions Data Science Project auf Github
Ihre Workflows ausführen und debuggen
Sie können Workflows auf verschiedene Arten starten, z. B. über die Konsole, einen API Aufruf (z. B. über eine Lambda-Funktion), über Amazon EventBridge und EventBridge Scheduler oder über eine andere Step Functions Functions-Zustandsmaschine. Beim Ausführen von Workflows können Verbindungen zu Diensten von Drittanbietern hergestellt und während der Ausführung Daten verwendet AWS SDKs und bearbeitet werden. Es gibt verschiedene Tools, mit denen Sie die Ausführungsschritte und Daten, die durch Ihre Zustandsmaschine fließen, ausführen und debuggen können. Die folgenden Abschnitte bieten zusätzliche Ressourcen zum Ausführen und Debuggen Ihrer Workflows.
Weitere Informationen darüber, wie Sie State-Machine-Ausführungen starten können, finden Sie unter. State-Machine-Ausführungen in Step Functions starten
Wählen Sie einen Endpunkt für die Ausführung Ihrer Workflows
Um die Latenz zu reduzieren und Daten an einem Ort zu speichern, der Ihren Anforderungen entspricht, bietet Step Functions Endpunkte in verschiedenen AWS Regionen. Jeder Endpunkt in Step Functions ist völlig unabhängig. Zustandsautomaten oder Aktivitäten existieren nur in der Region, in der sie erstellt wurden. Alle Zustandsmaschinen und Aktivitäten, die Sie in einer Region erstellen, teilen keine Daten oder Attribute mit denen, die in einer anderen Region erstellt wurden. Sie können beispielsweise einen Zustandsmaschine registrieren, der STATES-Flows-1
in zwei verschiedenen Regionen benannt ist. Die STATES-Flows-1
Zustandsmaschine in einer Region teilt keine Daten oder Attribute mit der STATES-Flow-1
Zustandsmaschine in der anderen Region. Eine Liste der Step Functions Functions-Endpunkte finden Sie unter AWS Step Functions Regionen und Endpunkte in der. Allgemeine AWS-Referenz
Steuern Sie den Datenfluss in Ihren Workflows
Sie können den DatenflusssimulatorInputPath
Parameters
,ResultSelector
,OutputPath
, undResultPath
. Weitere Informationen finden Sie unter Datenflusssimulator (nicht unterstützt).
Lokale Entwicklungsversion von Step Functions
Zu Test- und Entwicklungszwecken haben Sie die Möglichkeit, Step Functions auf Ihrem lokalen Computer zu installieren und auszuführen. Die lokale Version von Step Functions kann AWS Lambda Funktionen aufrufen, AWS sowohl in als auch bei der lokalen Ausführung. Sie können auch andere unterstützte AWS Dienste koordinieren. Weitere Informationen finden Sie unter Testen von Zustandsmaschinen mit Step Functions Local (nicht unterstützt).
Lokale und Remote-Entwicklung mit VS Code
Sie können VS Code auch verwenden, um mit Remote-Zustandsmaschinen zu interagieren und Zustandsmaschinen lokal zu entwickeln. Sie können Zustandsmaschinen erstellen oder aktualisieren, vorhandene Zustandsmaschinen auflisten und Zustandsmaschinen ausführen oder herunterladen. Mit VS Code können Sie auch neue Zustandsautomaten aus Vorlagen erstellen, eine Visualisierung Ihres Zustandsautomaten anzeigen und Codeausschnitte, Codevervollständigung und Codevalidierung bereitstellen. Weitere Informationen finden Sie im AWS Toolkit for Visual Studio Code Benutzerhandbuch
Bereitstellen Ihrer Workflows
Nachdem Sie Ihre Workflows definiert und debuggt haben, möchten Sie sie wahrscheinlich mithilfe von Infrastructure-as-Code-Frameworks bereitstellen. Sie können wählen, ob Sie Ihre Zustandsmaschinen mithilfe einer Vielzahl von IaC-Optionen bereitstellen möchten, darunter: AWS Serverless Application Model, AWS CloudFormation AWS CDK, und Terraform.
- AWS Serverless Application Model
Sie können Step Functions verwenden AWS Serverless Application Model , um Workflows zu erstellen und die Infrastruktur bereitzustellen, die Sie benötigen, einschließlich Lambda-Funktionen APIs und Ereignisse, um serverlose Anwendungen zu erstellen. Sie können das auch zusammen mit AWS SAM CLI dem AWS Toolkit for Visual Studio Code als Teil eines integrierten Erlebnisses verwenden.
Weitere Informationen finden Sie unter Zum Erstellen von Step Functions Functions-Workflows verwenden AWS SAM.
- AWS CloudFormation
Sie können Ihre State-Machine-Definitionen direkt in AWS CloudFormation Vorlagen verwenden.
Weitere Informationen finden Sie unter Die Verwendung von AWS CloudFormation um einen Workflow in Step Functions zu erstellen.
- AWS CDK
Sie können Standard- und Express-Zustandsmaschinen mit erstellen AWS CDK.
Informationen zum Erstellen eines Standard-Workflows finden Sie unterWird verwendetCDK, um einen Standard-Workflow zu erstellen.
Informationen zum Erstellen eines Express-Workflows finden Sie unterWird verwendetCDK, um einen Express-Workflow zu erstellen.
- Terraform
Terraform
by HashiCorp ist ein Framework für die Erstellung von Anwendungen unter Verwendung von Infrastructure as Code (IaC). Mit Terraform können Sie Zustandsmaschinen erstellen und Funktionen wie die Vorschau von Infrastrukturbereitstellungen und die Erstellung wiederverwendbarer Vorlagen verwenden. Terraform-Vorlagen helfen Ihnen dabei, den Code zu verwalten und wiederzuverwenden, indem sie ihn in kleinere Abschnitte aufteilen. Weitere Informationen finden Sie unter Verwendung von Terraform zur Bereitstellung von Zustandsmaschinen in Step Functions.