[Case Study] 1. Duolingo FinOps
개요
이번 글에서는 Duolingo의 AWS FinOps(클라우드 비용 최적화) 사례를 살펴봅니다.
Duolingo는 사용자 기반이 급격히 증가하는 서비스 특성상, AWS 리소스 사용량과 비용도 빠르게 커졌습니다. 이에 따라 단순한 비용 절감이 아니라 서비스 품질을 유지하면서 장기적으로 지속 가능한 비용 관리 체계를 마련하는 것이 핵심 과제였습니다.
주요 개선 사항
1. CloudFront 활용 확대
기존에는 트래픽을 Client → ALB 구조로 바로 전달했습니다.
Duolingo는 이를 Client → CloudFront → ALB 구조로 변경했습니다.
효과
- 네트워크 비용 절감
- 성능 향상 (캐싱, 지리적 분산 이점)
- 장기 약정(Commitments)를 활용한 추가 비용 최적화
2. DynamoDB 사용 최적화
DynamoDB는 AWS 청구서에서 두 번째로 큰 비용 항목이었습니다.
서비스팀은 DynamoDB를 선호했지만, 최적화된 방식으로 사용하고 있는지 확신이 부족했습니다.
대응
- DynamoDB Platinum Program 참여 → 베스트 프랙티스 확보
- Reserved Capacity 구매 → RCU/WCU 비용 절감
- 서비스팀 교육 제공 → 팀 단위로 효율적 사용 가능
3. EC2 인스턴스 풀 확장
EC2는 AWS 비용 항목 중 가장 큰 부분을 차지했습니다.
Duolingo는 Two fold approach(이중 접근법)으로 대응했습니다.
- Graviton 기반 인스턴스로 마이그레이션 -> 성능 향상과 비용 절감
- 다양한 인스턴스 타입 활용 -> 워크로드 특성에 맞는 인프라 선택
결과
- 2025년 기준 10% 비용 절감
- 서비스 팀 단위 비용 가시성 확보 -> 각 팀이 자신의 비용 사용량을 직접 확인 가능
향후 계획
Additional Unit Economics
단순 총 비용 관리에서 나아가, 단위 활동별 비용 측정을 추진합니다.
- CI/CD 빌드 1회당 비용
- A/B 테스트 1회당 비용
- 사용자 알림(Notification) 1건당 비용
More Workload Right-Sizing
워크로드 리소스를 적정하게 맞추는 작업을 지속합니다.
- 데이터베이스(DB) 사이징
- EC2 인스턴스 사이징
Golden Path
엔지니어가 가장 효율적이고 비용 최적화된 경로를 쉽게 선택할 수 있도록 내부 표준(골든 패스)을 제공할 예정입니다.
마무리
Duolingo 사례는 FinOps가 단순히 비용을 줄이는 활동이 아니라,
- 서비스팀에 비용 가시성을 제공하고
- 워크로드를 올바른 방식으로 운영하게 하며
- 지속 가능한 비용 관리 문화를 만드는 과정임을 보여줍니다.
DevOps/FinOps 엔지니어라면 단기적인 절감 효과에만 머무르지 않고, 장기적으로 팀이 자율적으로 비용을 관리할 수 있는 체계를 구축하는 것이 중요합니다.
댓글남기기