Creación de un sistema de procesamiento de pedidos con funciones duraderas de Lambda - AWS Lambda

Creación de un sistema de procesamiento de pedidos con funciones duraderas de Lambda

nota

NECESIDAD: Añadir un diagrama de arquitectura que muestre la API Gateway, el flujo de trabajo de funciones duraderas y los servicios de soporte (DynamoDB, EventBridge).

Requisitos previos

  • AWS CLI instalado y configurado

  • NECESIDAD: Requisitos específicos de funciones duraderas.

Creación de los archivos de código fuente

Cree los siguientes archivos en el directorio del proyecto:

  • lambda_function.py: código de función

  • requirements.txt: manifiesto de dependencias

Código de la función

# 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

Archivo de requisitos

# NEED: List of required packages

Implementar la aplicación

Creación de una tabla de pedidos de DynamoDB

  1. Abra la consola de DynamoDB desde ttps://console.aws.amazon.com/dynamodb/.

  2. Elija Create table (Crear tabla).

  3. En Nombre de la tabla, introduzca Orders.

  4. En Clave de partición, introduzca orderId.

  5. Deje el resto de los ajustes según los valores predeterminados.

  6. Elija Create table (Crear tabla).

Crear la función Lambda

  1. Abra la consola de Lambda en https://console.aws.amazon.com/lambda/.

  2. Elija Create function (Crear función)

  3. Seleccione Crear desde cero.

  4. En Nombre de la función, ingrese ProcessOrder.

  5. En Tiempo de ejecución, elija el tiempo de ejecución que prefiera.

  6. NECESIDAD: Añadir una configuración específica para funciones duraderas.

  7. Elija Create function (Crear función)

Creación del punto de conexión de API Gateway

  1. Abra la consola de API Gateway en https://console.aws.amazon.com/apigateway/.

  2. Seleccione Crear API.

  3. Seleccione HTTP API.

  4. Seleccione Compilar.

  5. Añada una integración con su función de Lambda.

  6. Configure rutas para el procesamiento de pedidos.

  7. Implemente la API.

Pruebe la aplicación.

Envíe un pedido de prueba:

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

NECESIDAD: Añadir instrucciones de supervisión específicas para las funciones duraderas.

Siguientes pasos

Agregado de lógica empresarial

Implemente la gestión de inventario:

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

Añada cálculos de precios:

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

Mejora de la gestión de errores

Añada lógica de compensación:

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

Gestione cancelaciones de pedidos:

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

Integración de sistemas externos

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

Supervisión mejorada

  • Cree paneles de CloudWatch.

  • Configure métricas para los tiempos de procesamiento de los pedidos.

  • Configure alertas para pedidos retrasados.