API 호출 한도(Quota) 제어 로직 | 스크립트 내에서 일일 API 요청 횟수를 카운트하고 딜레이를 주는 방법
API 호출 한도(Quota) 제어 로직 | 스크립트 내에서 일일 API 요청 횟수를 카운트하고 딜레이를 주는 방법 매번 API 호출 한도 초과 메시지를 받아서 당황했던 경험, 저도 정말 많았거든요. 오늘은 스크립트 내에서 스스로 호출 횟수를 제어하고 안전하게 데이터를 가져오는 방법을 핵심만 뽑아서 정리해 드릴게요! 💡 핵심 요약 일일 호출 제한 1,000회 이하로 설정하여 안정성 확보 요청 간 500ms 이상의 강제 딜레이 부여 Redis 등을 활용한 횟수 카운트 실시간 동기화 제어 방식 적용 권장 환경 지연 시간(ms) 단순 루프 개인 테스트용 1000ms Redis 동기화 운영 서버 500ms 큐(Queue) 처리 대량 트래픽 200ms 🔍 호출 횟수 카운팅을 위한 저장소 선택 스크립트가 재시작되어도 횟수가 초기화되지 않도록 파일 기반 저장소나 데이터베이스를 활용 해야 합니다. 2026년 현재 대규모 서비스에서는 Redis 를 주로 사용하며, 단순 스크립트라면 간단한 JSON 파일로도 충분하답니다. 💡 꿀팁! 로컬 환경에서는 'local_quota.json' 파일을 만들어 현재 날짜를 키(key)로 설정하면 일일 초기화 로직을 아주 쉽게 짤 수 있어요. ⏱️ 강제 딜레이 부여로 밴(Ban) 방지하기 많은 API 서비스가 1초당 5회 이상의 요청 을 공격으로 간주하곤 하죠. sleep 함수를 활용해 요청 사이마다 최소 500ms에서 1000ms 의 대기 시간을 부여하는 것만으로도 차단 확률을 80% 이상 낮출 수 있어요. ...