Daten aus einer Warteschlange mit einem Map-Status in Step Functions verarbeiten - 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.

Daten aus einer Warteschlange mit einem Map-Status in Step Functions verarbeiten

In diesem Beispielworkflow verarbeitet ein Workflow-Status zuordnen Bundesstaat Daten aus einer Warteschlange, sendet Nachrichten an Abonnenten und speichert sie in einer Datenbank.

Step Functions verwendet eine optimierte Integration, um Nachrichten aus einer SQS Amazon-Warteschlange abzurufen. Wenn Nachrichten verfügbar sind, übergibt ein Choice Status ein Array von JSON Nachrichten zur Verarbeitung an einen Zuordnung Status. Für jede Nachricht schreibt die Zustandsmaschine die Nachricht in DynamoDB, entfernt die Nachricht aus der Warteschlange und veröffentlicht die Nachricht in einem SNS Amazon-Thema.

Dieses Beispielprojekt umfasst die folgenden Ressourcen:

  • Importieren in &S3; AWS Step Functions Zustandsautomat

  • Eine SQS Amazon-Warteschlange, aus der der Map-Status Nachrichten iterativ liest und entfernt.

  • Eine DynamoDB-Tabelle, in die der Map-Status iterativ Nachrichten schreibt.

  • Ein SNS Amazon-Thema, zu dem Step Functions die Nachrichten veröffentlicht, die es aus der SQS Amazon-Warteschlange liest.

  • Verwandt AWS Identity and Access Management (IAM) Rollen

Schritt 1: Erstellen Sie die Zustandsmaschine

  1. Öffnen Sie die Step Functions Functions-Konsole und wählen Sie Create State Machine.

  2. Suchen und wählen Sie Daten dynamisch verarbeiten mit einem Kartenstatus aus. Wählen Sie Next (Weiter), um fortzufahren.

  3. Wählen Sie „Demo ausführen“, um einen Schreibschutz und einen ready-to-deploy Workflow zu erstellen, oder wählen Sie „Darauf aufbauen“, um eine editierbare Zustandsmaschinen-Definition zu erstellen, auf der Sie aufbauen und später bereitstellen können.

  4. Wählen Sie Vorlage verwenden, um mit Ihrer Auswahl fortzufahren.

Die nächsten Schritte hängen von Ihrer vorherigen Auswahl ab:

  1. Führen Sie eine Demo durch — Sie können den Status Machine überprüfen, bevor Sie ein schreibgeschütztes Projekt mit Ressourcen erstellen, die bereitgestellt werden von AWS CloudFormation zu Ihrem AWS-Konto.

    Sie können sich die State-Machine-Definition ansehen. Wenn Sie bereit sind, wählen Sie Deploy and run, um das Projekt bereitzustellen und die Ressourcen zu erstellen.

    Die Bereitstellung kann bis zu 10 Minuten dauern, bis Ressourcen und Berechtigungen erstellt sind. Sie können den Stack-ID-Link verwenden, um den Fortschritt zu überwachen AWS CloudFormation.

    Nach Abschluss der Bereitstellung sollte Ihre neue Zustandsmaschine in der Konsole angezeigt werden.

  2. Darauf aufbauen — Sie können die Workflow-Definition überprüfen und bearbeiten. Möglicherweise müssen Sie Werte für Platzhalter im Beispielprojekt festlegen, bevor Sie versuchen, Ihren benutzerdefinierten Workflow auszuführen.

Anmerkung

Für Dienste, die für Ihr Konto bereitgestellt werden, können Standardgebühren anfallen.

Schritt 2: Abonnieren Sie das SNS Amazon-Thema

Tipp

Abonnieren Sie das SNS Amazon-Thema und fügen Sie Artikel zur SQS Amazon-Warteschlange hinzu, bevor Sie Ihren State Machine ausführen.

  1. Öffnen Sie die SNSAmazon-Konsole.

  2. Wählen Sie Themen und suchen Sie das Thema, das durch das Beispielprojekt erstellt wurde.

  3. Wählen Sie Abonnement erstellen und als Protokoll die Option E-Mail aus.

  4. Geben Sie unter Endpunkt Ihre E-Mail-Adresse ein, um das Thema zu abonnieren.

  5. Wählen Sie Create subscription (Abonnement erstellen) aus.

  6. Bestätigen Sie das Abonnement in Ihrer E-Mail, um das Abonnement zu aktivieren.

Schritt 3: Nachrichten zur SQS Amazon-Warteschlange hinzufügen

  1. Öffnen Sie die SQSAmazon-Konsole.

  2. Wählen Sie die Warteschlange aus, die durch das Beispielprojekt erstellt wurde.

  3. Wählen Sie Nachrichten senden und empfangen, geben Sie eine Nachricht ein und wählen Sie Nachricht senden. Wiederholen Sie diesen Schritt, um mehrere Nachrichten zur Warteschlange hinzuzufügen.

Schritt 4: Führen Sie die Zustandsmaschine aus

Tipp

Die Warteschlangen bei Amazon SNS sind irgendwann konsistent. Möglicherweise müssen Sie nach dem Senden von Nachrichten an die Warteschlange einige Minuten warten, bevor Sie Ihre Zustandsmaschine ausführen können.

  1. Wählen Sie auf der Seite State Machines Ihr Beispielprojekt aus.

  2. Wählen Sie auf der Seite mit dem Beispielprojekt die Option Ausführung starten aus.

  3. Gehen Sie im Dialogfeld Ausführung starten wie folgt vor:

    1. (Optional) Geben Sie einen benutzerdefinierten Ausführungsnamen ein, um den generierten Standard zu überschreiben.

      ASCIINichtnamen und Protokollierung

      Step Functions akzeptiert Namen für Zustandsmaschinen, Ausführungen, Aktivitäten und Bezeichnungen, die ASCII Nichtzeichen enthalten. Da solche Zeichen nicht mit Amazon funktionieren, empfehlen wir CloudWatch, nur ASCII Zeichen zu verwenden, damit Sie die Messwerte verfolgen können CloudWatch.

    2. (Optional) Geben Sie im Eingabefeld die Eingabewerte als einJSON. Sie können diesen Schritt überspringen, wenn Sie eine Demo ausführen.

    3. Wählen Sie Start execution (Ausführung starten) aus.

    Die Step Functions Functions-Konsole leitet Sie zu einer Seite mit den Ausführungsdetails weiter, auf der Sie Status in der Diagrammansicht auswählen können, um die zugehörigen Informationen im Einzelheiten zu den Schritten Bereich zu untersuchen.

Herzlichen Glückwunsch!

Sie sollten jetzt entweder eine laufende Demo oder eine State-Machine-Definition haben, die Sie anpassen können.