6초에서 0.2초로: 레거시 API 성능 개선 이야기
·
프로그래밍
서비스를 운영하다 보면 늘 예상치 못한 문제가 튀어나오곤 합니다. 이번엔 문서 및 카테고리 이동 기능이 발목을 잡았습니다.실제로 고객들이 자주 사용하는 기능이여서, 해당 기능으로 고객들은 작성해놓은 문서를 새로운 카테고리나, 폴더등으로 옮기곤 합니다. 그런데 고객들의 사용 빈도만큼이나 "너무 느려요", "이동기능 로딩만 5초 넘게 걸려요" 같은 불만도 많았습니다.그래서 실제로 테스트를 해보니 응답 시간이 평균 6초에 달했습니다. 사용자는 6초 동안 화면에서 로딩 메시지를 봐야 하고, 작업 도중 페이지를 닫아버리는 경우도 있었습니다.따라서 해당 기능에 대해 어떤 부분에서 성능 문제가 발생했는지, 파악하고 개선하자는 목표로 작업을 진행했습니다.6초의 로딩 시간, 문제는 반복되는 save()호출이었다문제의 원..