대규모 트래픽 성능 이슈 + 해결
인턴 프로젝트에서 이벤트 트래픽이 평소의 5배 이상 몰리는 상황을 맞은 적 있습니다. DB 조회 쿼리가 순차적으로 처리되면서 응답 지연이 7초를 넘었고, 일부 요청은 타임아웃으로 실패했습니다. 원인을 찾아보니 반복 조회되는 데이터에 캐시가 없어서 매번 DB에 직접 요청이 가고 있었습니다. Redis를 붙여서 자주 조회되는 결과를 TTL 5분으로 캐싱했더니 응답 시간이 1초 이하로 줄었습니다. 병목이 어디서 생기는지를 먼저 측정하고 나서 손대는 것이 가장 빠른 해결 경로였습니다.
병목이 어디인지 먼저 측정하지 않으면 최적화는 감으로 하는 것입니다. 캐시 하나로 응답이 7배 빨라진 경험이 저에게 성능 개선은 계측에서 시작한다는 원칙을 만들었습니다.