← 전체 글로 돌아가기

웹 개발

실전 서비스에서 레이트 제한 운영하기

실제 사용자를 처리하는 서비스에서 API 레이트 제한을 안정적으로 유지하는 방법입니다.

실제 서비스가 운영되면 예상보다 훨씬 많은 요청이 몰려올 수 있다. 이때 레이트 제한이 제대로 작동하지 않으면 서버가 과부하 상태에 빠질 수 있다.

현재 문제 상황 파악

"레이트 제한이 작동하지 않는다"는 것을 더 구체적으로 정의해야 한다:

  • 어느 엔드포인트에서 문제인가
  • 모든 사용자에게 영향을 미치는가, 특정 사용자만인가
  • 최근에 어떤 변경이 있었는가

정상 상태 먼저 정하기

제한값을 정하기 전에 정상적인 사용 패턴이 뭔지 파악해야 한다:

  • 초당 평균 요청 수는 몇 개인가
  • 최대 피크 시간에 몇 개까지 가능해야 하는가
  • 만약 제한을 초과하면 어떻게 처리할 건가

설정 확인 단계

npm run build

레이트 제한 관련 설정이 제대로 반영되었는지 확인한다:

  1. 제한값이 설정대로 적용되었는가
  2. 재시도 로직이 작동하는가
  3. 제한 초과 시 응답이 예상대로 나오는가

작게 바꿔보기

한 번에 제한값을 크게 변경하지 말자. 현재값에서 조금씩 조정하면서 모니터링한다.

실제 사용자 패턴을 기록해두면 다음 설정 조정 시 매우 유용하다. 어떤 값이 달라졌는지 설명할 수 있는 상태가 되면 충분히 정리된 것이다.