웹 개발
운영 중 발견되는 성능 문제 원인 추적하기
배포 후 운영 중에 발견되는 성능 저하나 볼륨 문제를 체계적으로 진단하는 방법입니다.
운영 환경에서는 로컬에서 봤던 것과 다른 문제가 나타나곤 한다. 특히 성능 저하는 한 가지 원인이 아니라 여러 요소의 조합일 수 있다.
화면만 봐서는 알 수 없는 것들
사용자가 "느리다"고 보고했을 때 화면 하나만 보고 판단하면 안 된다. 다음을 함께 확인해야 한다:
- 실제 응답 시간은 몇 초인가
- 서버 로그에는 어떤 에러가 기록되었는가
- 데이터베이스 쿼리는 정상 속도인가
- 네트워크 연결 상태는 문제없는가
npm run build
빌드 후에도 런타임에 성능 문제가 발생할 수 있다는 점을 기억하자.
증거 모으기 절차
문제를 해결하려면 먼저 증거를 모아야 한다:
- 사용자가 보고한 증상을 정확히 기록
- 같은 조건에서 재현이 되는지 시도
- 시간대별로 어떤 패턴이 있는지 확인
확인해봐야 할 값들
- 사용자 영향: 모든 사용자에게 영향을 미치는가, 특정 조건일 때만 나타나는가
- 빌드 결과: 최신 버전이 배포되어 있는가
- 설정값: 환경 변수나 데이터베이스 연결 설정이 맞는가
한 번에 여러 설정을 바꾸지 않기
테스트할 때는 한 가지씩만 변경해서 뭐가 실제로 효과가 있었는지 알아야 한다. 여러 개를 동시에 바꾸면 나중에 원인을 찾기 어려워진다.
관련 기록을 짧게라도 남겨두면 다음 확인이 훨씬 빨라진다.