성능 병목 측정 후 캐싱 도입으로 서비스 응답 시간 개선 결
서비스 개선 작업 중 기억에 남는 프로젝트는 사이드 프로젝트에서 목록 조회 API의 응답 시간이 느린 문제를 분석하고 개선한 것입니다. 먼저 APM 도구로 어느 쿼리가 전체 응답 시간의 대부분을 차지하는지를 파악하고, 최적화 대상을 데이터 기반으로 선정했습니다.
원인은 반복 호출되는 집계 쿼리의 캐싱 미적용이었습니다. 변경 빈도가 낮은 집계 결과를 Redis에 캐시하고 일정 시간 후 갱신하는 방식을 적용했더니 응답 시간이 400ms에서 80ms 수준으로 단축됐습니다.
이 경험에서 배운 것은 개선은 추측이 아니라 측정에서 시작해야 한다는 점입니다. 성능이 느리다는 보고를 받았을 때 바로 코드를 수정하지 않고 원인을 먼저 계측하는 습관이, 효과 없는 작업에 시간을 쓰지 않게 해줍니다.