피드로 돌아가기
Dev.toInfrastructure
원문 읽기
EC2 고정비 제거를 위한 Flask-Lambda 아키텍처 전환 및 비용 최적화
Deploying Flask on AWS Lambda Without Losing Your Mind: A Setup-to-Production Guide
AI 요약
Context
트래픽이 간헐적인 Flask API의 t3.micro 인스턴스 운영으로 인한 유휴 비용 발생. 고정적인 서버 비용 지출을 제거하고 요청 기반 과금 체계로의 전환이 필요한 상황.
Technical Solution
- Mangum 어댑터를 통한 Lambda Event Dict의 WSGI 환경 변환 및 Flask 라우팅 연동
- API Gateway v1/v2 페이로드 포맷 차이에 따른 망검(Mangum) 설정 최적화
- AWS SAM 활용을 통한 CloudFormation 기반 인프라 코드화 및 배포 자동화
- SQLAlchemy 및 boto3 등 무거운 의존성으로 인한 Cold Start 지연을 Lazy Import로 해결
- 250MB 언집 배포 패키지 제한 및 10MB 응답 페이로드 캡을 고려한 경량 패키징 설계
- 요청 규모 증가 시 Lambda 비용 급증 구간을 분석하여 App Runner 등 컨테이너 기반 대안 검토
실천 포인트
- [ ] API Gateway 페이로드 버전과 Mangum 설정 일치 여부 확인 - [ ] 의존성 트리 최적화 및 Lazy Import 적용으로 Cold Start 시간 단축 - [ ] 월 요청 수가 수백만 건 이상일 경우 t3 인스턴스 및 App Runner와 비용 시뮬레이션 비교 - [ ] 10MB 이상의 대용량 응답이나 WebSocket 필요 여부 검토 후 Lambda 채택 결정