
백엔드
무신사 쿠폰 시스템, DB 성능 64% 개선으로 기술 부채를 갚다
두줄요약
무신사는 쿠폰 시스템의 레거시 병목을 분석해 API와 쿼리 구조를 개선했습니다. 그 결과 DB 성능을 64% 높이고 고트래픽 구간의 CPU 알람을 안정화했습니다.
문제 상황
- 무신사 쿠폰 시스템의 레거시와 기술 부채 누적
- 상품 상세 페이지의 고트래픽 구간에서 복잡한 쿠폰 조회 쿼리로 DB CPU 급등
- 쿠폰 발행량 증가와 개인화 계산 구조로 캐싱이 어려운 병목 발생
원인 분석
- 15년간 누적된 비효율적 데이터 모델링과 과도한 조인
- 최대 혜택가 계산을 위한 매 요청 실시간 DB 접근 집중
- 쿠폰 조건이 사용자별로 달라 동적 쿼리 비용이 선형 증가
해결 방법
- 신규 시스템 도입 대신 기존 레거시를 점진적으로 개선
- 상품 상세 페이지 쿠폰 API 5개 호출 구조를 줄이고 단일 API로 통합
- 복잡한 쿼리를 분리하고 서버 연산과 Memcache 기반 세분화 캐싱으로 전환
주의할 점
- 상품, 주문, 회원 등 연관 도메인과의 사이드 이펙트 관리 필요
- 운영 안정성 확보를 위한 검증과 점진적 오픈 필수
- 실제 트래픽 기반 회귀 테스트와 모니터링 전제 필요
적용해볼 점
- 성능 병목은 쿼리뿐 아니라 API 흐름과 UI 호출 방식까지 함께 점검
- 큰 쿼리보다 작은 단위 분리와 캐싱 재설계 우선 검토
- 안전망 도구와 점진 배포로 레거시 개선 리스크 완화