Création d'un système de traitement des commandes avec des fonctions Lambda Durable - AWS Lambda

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Création d'un système de traitement des commandes avec des fonctions Lambda Durable

Note

BESOIN : Ajouter un schéma d'architecture illustrant API Gateway, le flux de travail Durable Function et les services de support (DynamoDB,) EventBridge

Conditions préalables

  • AWS CLI installé et configuré

  • BESOIN : Exigences spécifiques relatives aux fonctions durables

Création des fichiers de code source

Créez les fichiers suivants dans le répertoire de votre projet :

  • lambda_function.py- le code de fonction

  • requirements.txt- manifeste des dépendances

Code de fonction

# 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

Fichier Requirements

# NEED: List of required packages

Déployer l'application

Création d'une table DynamoDB pour les commandes

  1. Ouvrez la console DynamoDB à l'adresse https://console.aws.amazon.com/dynamodb/

  2. Choisissez Create table

  3. Dans le champ Nom de la table, entrez Orders

  4. Pour Clé de partition, entrez orderId

  5. Conserver les autres paramètres par défaut

  6. Choisissez Create table

Création de la fonction Lambda

  1. Ouvrez la console Lambda à l'adresse https://console.aws.amazon.com/lambda/

  2. Choisissez Créer une fonction.

  3. Sélectionnez l'auteur à partir de zéro

  4. Sous Nom de la fonction, saisissez ProcessOrder.

  5. Pour Runtime, choisissez votre environnement d'exécution préféré

  6. BESOIN : Ajouter une configuration spécifique à Durable Functions

  7. Choisissez Créer une fonction.

Création du point de terminaison API Gateway

  1. Ouvrez la console API Gateway à l'adresse https://console.aws.amazon.com/apigateway/

  2. Choisissez Create API

  3. Sélectionnez l'API HTTP

  4. Choisissez Build

  5. Ajoutez une intégration avec votre fonction Lambda

  6. Configuration des itinéraires pour le traitement des commandes

  7. Déploiement de l’API

Vérification de l'application

Soumettre une commande d'essai :

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

BESOIN : Ajouter des instructions de surveillance spécifiques pour les fonctions durables

Étapes suivantes

Ajouter une logique métier

Mettre en œuvre la gestion des stocks :

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

Ajoutez les calculs de prix :

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

Améliorez la gestion des erreurs

Ajoutez une logique de compensation :

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

Gérer les annulations de commandes :

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

Intégrer des systèmes externes

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

Améliorez la surveillance

  • Création de CloudWatch tableaux de bord

  • Configurer des métriques pour les délais de traitement des commandes

  • Configuration des alertes pour les commandes retardées