경험 중심 1인칭 답변
초당 수만 건 트래픽을 처리하는 API 서버라면 수평 확장(Scale-out) 가능한 무상태(Stateless) 아키텍처를 먼저 설계하겠습니다. 세션 정보는 Redis 같은 인메모리 저장소로 분리해 서버 간 상태 공유 없이 독립적으로 요청을 처리할 수 있게 합니다. 부하 분산은 L7 로드밸런서 뒤에 오토스케일링 그룹을 구성하고, 피크 시간대 트래픽 패턴을 미리 분석해 예비 인스턴스를 사전에 준비합니다.
DB 병목을 막기 위해 읽기 집중 요청은 읽기 전용 레플리카로 분산하고, 반복적인 조회 결과는 CDN이나 애플리케이션 레벨 캐시로 처리합니다. 성능 최적화는 프로파일러로 실제 병목 구간을 먼저 찾은 후 수정하는 원칙으로 접근합니다. 경험으로는 소규모 서비스에서 쿼리 최적화와 커넥션 풀 설정을 조정해 응답시간을 30% 줄인 사례가 있어, 이런 접근 방식의 실효성을 직접 확인했습니다.
트래픽 급증 시나리오를 미리 시뮬레이션해 임계점을 파악하는 준비가 실제 장애를 막는 가장 확실한 방법이라고 생각합니다.