조회 페이지 로딩 1분;
고객사에서 요청이 왔더라구요
“조회 페이지 로딩이 너무 느려요.. 원랜 그냥 썻는데, 더 이상 못 하겠어요”
총 2개의 조회 페이지가 있는데 둘 다 너무 느렸습니다.
그래서 확인을 해보니 응답이 대략적으로 48400ms, 64800ms가 나왔습니다..
진짜 이걸 이대로 사용한 고객사가 대단하네요(해외 대기업입니다)
아무리 대기업이라 데이터가 많아도 그렇지 페이지 로딩이 어떻게 1분이 걸릴수가 있지 싶어서 코드와 쿼리를 뜯어보니
쿼리는 모든 데이터를 다 돌며 나오고, 추가로 컨트롤러에서 SQL문을 추가로 집어넣어놔서 너무 복잡하더라구요
(담당자가 최근에 퇴사를 해서 제가 최근에 인수인계를 받아 잘 모르던 상태였습니다.)
그래서 해석 하는데만 일주일 걸렸고 어제 리펙토링 완료 했습니다.
필요없는 컬럼들 다 빼고, 서브쿼리와 조인의 장단점을 구분해서 맞게 작성을 다시 하고
이리저리 꼬인 로직들 잘 풀어보니까
결과적으론 64800ms → 3060ms, 48400ms → 1080ms까지 줄였네요
고객사에서도 원래 메일로만 소통하는데 너무 감사하다고 전화까지 주시니 뭔가 뿌듯하네요
취업 하고나서 처음으로 개발자하길 잘했다고 생각이 들었습니다.