목록 보기
한계에 도달한 전시 서버, 그리고 우리의 해답
백엔드

한계에 도달한 전시 서버, 그리고 우리의 해답

11번가
11번가
2025년 11월 25일

두줄요약

전시 API 서버의 트래픽 증가와 Scale-in 전환에 맞춰 성능 최적화 과정을 정리했습니다. MongoDB 커넥션, 재시도 정책, 캐시와 조회 로직을 조정해 TPS와 안정성을 함께 높였습니다.

문제 상황

  • 전시 API 서버에 트래픽과 버스트 트래픽이 꾸준히 증가하며 비용과 운영 부담이 커진 상황
  • 서버 축소(Sacle-in) 전환을 위해 CPU 스파이크, 지연 트랜잭션, 메모리 압박을 동시에 해소할 필요

원인 분석

  • MongoDB 커넥션 풀의 대량 재생성 작업이 특정 시점에 집중되며 주기적인 CPU Spike 유발
  • 버스트 트래픽에서 재시도 로직과 대량 조회 command fan-out이 지연과 타임아웃을 증폭
  • 제한 없는 로컬 캐시와 대량 조회 패턴이 힙 메모리와 CPU 부하를 키우는 구조

해결 방법

  • maxConnectionIdleTime을 인스턴스별로 분산 설정해 커넥션 재생성 시점을 분산
  • 재시도 기능을 끄는 Fast-Fail 전략과 커넥션 풀 확충으로 지연 트랜잭션 완화
  • 캐시 최대 크기 설정, 캐시키 정렬, 대량 조회 분할로 리소스 사용량 안정화

댓글 0

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

댓글을 불러오는 중...