Erstellung eines Auftragsabwicklungssystems mit Lambda Durable-Funktionen - AWS Lambda

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.

Erstellung eines Auftragsabwicklungssystems mit Lambda Durable-Funktionen

Anmerkung

ERFORDERLICH: Fügen Sie ein Architekturdiagramm hinzu, das das API Gateway, den Durable Function-Workflow und die unterstützenden Dienste zeigt (DynamoDB,) EventBridge

Voraussetzungen

  • AWS CLI installiert und konfiguriert

  • BEDARF: Spezifische Anforderungen an langlebige Funktionen

Erstellen Sie die Quellcodedateien

Erstellen Sie die folgenden Dateien in Ihrem Projektverzeichnis:

  • lambda_function.py- der Funktionscode

  • requirements.txt- Abhängigkeiten manifestieren sich

Funktionscode

# NEED: Verify correct imports import boto3 import json def lambda_handler(event, context): # NEED: Verify DurableContext syntax durable = context.durable try: # Validate and store order order = await durable.step('validate', async () => { return validate_order(event['order']) }) # Process payment # NEED: Verify wait syntax await durable.wait(/* wait configuration */) # Additional steps # NEED: Complete implementation except Exception as e: # NEED: Error handling patterns raise e def validate_order(order_data): # NEED: Implementation pass

Anforderungsdatei

# NEED: List of required packages

Bereitstellen der Anwendung

Erstellen Sie eine DynamoDB-Tabelle für Bestellungen

  1. Öffnen Sie die DynamoDB-Konsole unter https://console.aws.amazon.com/dynamodb/

  2. Wählen Sie Tabelle erstellen

  3. Geben Sie als Tabellenname ein Orders

  4. Geben Sie für Partitionsschlüssel Folgendes ein orderId

  5. Belassen Sie andere Einstellungen als Standard

  6. Wählen Sie Tabelle erstellen

So erstellen Sie die Lambda-Funktion:

  1. Öffnen Sie die Lambda-Konsole unter https://console.aws.amazon.com/lambda/

  2. Wählen Sie Create function (Funktion erstellen).

  3. Wählen Sie Autor von Grund auf

  4. Geben Sie unter Funktionsname ProcessOrder ein.

  5. Wählen Sie für Runtime Ihre bevorzugte Laufzeit

  6. ERFORDERLICH: Fügen Sie eine für Durable Functions spezifische Konfiguration hinzu

  7. Wählen Sie Create function (Funktion erstellen).

Erstellen Sie den API-Gateway-Endpunkt

  1. Öffnen Sie die API Gateway Gateway-Konsole unter https://console.aws.amazon.com/apigateway/

  2. Wählen Sie Create API

  3. Wählen Sie HTTP-API

  4. Wählen Sie Build

  5. Fügen Sie eine Integration mit Ihrer Lambda-Funktion hinzu

  6. Konfigurieren Sie Routen für die Auftragsabwicklung

  7. Bereitstellen der API

Testen der Anwendung

Reichen Sie eine Testbestellung ein:

{ "orderId": "12345", "items": [ { "productId": "ABC123", "quantity": 1 } ] }

ERFORDERLICH: Fügen Sie spezifische Überwachungsanweisungen für langlebige Funktionen hinzu

Nächste Schritte

Geschäftslogik hinzufügen

Implementieren Sie die Inventarverwaltung:

async def check_inventory(order): # Add inventory check logic pass

Preisberechnungen hinzufügen:

async def calculate_total(order): # Add pricing logic pass

Verbessern Sie die Fehlerbehandlung

Vergütungslogik hinzufügen:

async def reverse_payment(order): # Add payment reversal logic pass

Stornierungen von Bestellungen bearbeiten:

async def cancel_order(order): # Add cancellation logic pass

Integrieren Sie externe Systeme

async def notify_shipping_provider(order): # Add shipping integration pass async def send_customer_notification(order): # Add notification logic pass

Verbessern Sie die Überwachung

  • Erstellen Sie CloudWatch Dashboards

  • Richten Sie Kennzahlen für die Bearbeitungszeiten von Bestellungen ein

  • Konfigurieren Sie Benachrichtigungen für verspätete Bestellungen