웹 개발
날짜 필터로 대량 데이터를 다룰 때
정렬이나 필터링 로직을 수정할 때는 화면만 보지 말고 로그와 응답을 함께 확인해야 한다. 로컬과 운영 환경의 성능 차이가 크기 때문이다.
날짜 범위 필터를 추가하면서 대량 데이터 쿼리가 느려지는 경험을 했다. 로컬 데이터베이스에서는 빠르지만 프로덕션 데이터로 테스트하면 응답이 느렸다.
문제의 경계를 명확히 하는 게 중요하다. 어떤 데이터 범위에서 느린지, 얼마나 느린지 정량적으로 파악해야 한다.
문제의 범위 찾기
날짜 필터링이 느린 건지, 정렬이 느린 건지, 아니면 렌더링이 느린 건지 구분해야 한다.
- 기본 설정 확인
- 정상일 때의 문제 해결 상태
- 기록할 사항: 명령어 출력, 상태 코드, 설정 변경사항
로컬과 운영의 차이 기록하기
로컬에서는 테스트 데이터가 적지만 프로덕션에는 수백만 건이 있을 수 있다. 이 차이를 인식하고 테스트해야 한다.
npm run build
응답 확인과 위험 요소
- 같은 조건에서 느린 응답이 반복되는지 확인
- 로그와 응답에서 변화를 정리
- 공개 환경에서 최종 테스트
한 번에 여러 설정을 바꾸지 않으면 어느 것이 효과가 있었는지 알 수 있다.