목록 보기
무진장을 맞아, 후기 응답속도를 개선해보자
백엔드

무진장을 맞아, 후기 응답속도를 개선해보자

무신사
무신사
2024년 9월 25일

두줄요약

무신사 후기 목록 API의 병목을 분석해 상품 단위 캐시와 로직 분리를 적용했습니다. 무진장 기간 기준 응답속도와 pods 수를 함께 줄여 안정성을 높였습니다.

문제 상황

  • 무신사 무진장 기간, 상품 상세의 후기 목록 API 응답 지연이 250~300ms 수준으로 가장 느린 병목
  • 트래픽 급증 시 후기 서비스의 EKS pods, DB, Elasticsearch, 연관 API 호출 비용까지 함께 증가하는 구조
  • 후기 조회 내부에 상품 정보, 연관 상품, 필터 생성, 숨김/차단 회원 필터링 등 처리 단계가 과도하게 누적된 상태

원인 분석

  • 상품 상세 페이지의 후기 요청이 상품번호 단위로 반복 발생하지만, 결과를 재사용하지 못하는 구조
  • 후기 목록 응답을 만들기 위해 여러 하위 API와 데이터 후처리가 연쇄적으로 수행되는 비효율
  • 개인화 처리와 공통 데이터 조회가 섞여 있어 캐싱 적용이 어려운 구조

해결 방법

  • 개인화 처리와 상품 공통 조회를 분리하여 상품 단위 캐시 적용 가능하도록 재구성
  • 중복 로직과 불필요한 처리 제거로 후기 데이터 조회 경로 단순화
  • k6 부하 테스트로 성능 검증 후, 평균 응답지연 300ms에서 100ms 수준으로 개선

다음 읽기

#Redis 주제를 이어서 읽기

무진장 힘들었지만 무진장 성장한 개발 이야기

무진장 이벤트의 초고트래픽을 버티기 위해 전시, 주문, 재고, 쿠폰, 운영 전반을 재설계했습니다. CQRS, 이벤트 기반 처리, AIOps와 피처 플래그로 안정성과 대응력을 높였습니다.

무신사
무신사
아키텍처

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...