Lambda 지속성 함수를 사용하여 주문 처리 시스템 생성
참고
필요: API Gateway, 지속성 함수 워크플로 및 지원 서비스(DynamoDB, EventBridge)를 보여주는 아키텍처 다이어그램 추가
사전 조건
AWS CLI 설치 및 구성
필요: 특정 지속성 함수 요구 사항
소스 코드 파일 생성
프로젝트 디렉터리에 다음 파일을 생성합니다.
lambda_function.py- 함수 코드requirements.txt- 종속성 매니페스트
함수 코드
# 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
요구 사항 파일
# NEED: List of required packages
앱 배포
주문에 대한 DynamoDB 테이블 생성
https://console.aws.amazon.com/dynamodb/
에서 DynamoDB 콘솔을 엽니다. 테이블 생성 선택
테이블 이름에
Orders입력파티션 키에
orderId입력다른 설정은 기본값 유지
테이블 생성 선택
Lambda 함수 생성
https://console.aws.amazon.com/lambda/
에서 Lambda 콘솔 열기 함수 생성 선택
새로 작성 선택
함수 이름에
ProcessOrder을 입력합니다.런타임에서 원하는 런타임 선택
필요: 지속성 함수별 구성 추가
함수 생성 선택
API Gateway 엔드포인트 생성
https://console.aws.amazon.com/apigateway/
에서 API Gateway 콘솔 열기 API 생성 선택
HTTP API 선택
빌드 선택
Lambda 함수와의 통합 추가
주문 처리 경로 구성
API 배포
앱 테스트
테스트 주문을 제출합니다.
{ "orderId": "12345", "items": [ { "productId": "ABC123", "quantity": 1 } ] }
필요: 지속성 함수에 대한 특정 모니터링 지침 추가
다음 단계
비즈니스 로직 추가
재고 관리를 구현합니다.
async def check_inventory(order): # Add inventory check logic pass
가격 계산을 추가합니다.
async def calculate_total(order): # Add pricing logic pass
오류 처리 개선
보정 로직을 추가합니다.
async def reverse_payment(order): # Add payment reversal logic pass
주문 취소를 처리합니다.
async def cancel_order(order): # Add cancellation logic pass
외부 시스템 통합
async def notify_shipping_provider(order): # Add shipping integration pass async def send_customer_notification(order): # Add notification logic pass
모니터링 개선
CloudWatch 대시보드 생성
주문 처리 시간 관련 지표 설정
지연된 주문에 대한 알림 구성