✅ 1. 에러 코드 429란?
-
HTTP 429 Too Many Requests는 클라이언트(사용자)가 짧은 시간 내에 너무 많은 요청을 서버에 보냈을 때 서버가 요청을 차단하면서 반환하는 에러입니다.
✅ 2. Open WebUI에서 429 에러가 발생하는 주요 원인
2-1. Open WebUI 자체의 Rate Limiting 설정
-
Open WebUI 또는 그 백엔드 서비스(API 서버 등)에 요청 횟수 제한(Rate Limiter) 설정이 있을 수 있습니다.
-
예: IP당 분당 60회 요청 제한 → 초과 시 429 발생
2-2. 프록시 서버나 Cloudflare의 제한
-
Open WebUI가 Cloudflare나 Nginx 등의 프록시 서버를 거쳐 운영된다면, 프록시 레이어에서 Rate Limiting이 적용되어 있을 수 있습니다.
-
봇 공격 방어, 과도한 API 호출 방지 목적
2-3. 백엔드 LLM API(OpenAI, Gemini, Mistral 등) 호출 제한
-
Open WebUI는 OpenAI API나 다른 LLM API를 프록시처럼 호출하기 때문에, 해당 API에서의 제한으로 인해 429가 발생할 수 있습니다.
-
예: OpenAI 무료 요금제의 분당/일간 제한 초과
2-4. n8n, Postman, 자동화 툴 등과의 과도한 연동 테스트
-
자동화 도구를 사용한 빈번한 호출(n8n 워크플로우, Postman 반복 호출 등) → 서버가 과부하를 감지하고 429 응답
2-5. Open WebUI 인스턴스의 과도한 사용자 접속
-
하나의 인스턴스에 다수 사용자가 접속해서 동시에 요청 시 → 내부 처리량 초과
✅ 3. 문제 해결 방법
3-1. 요청 속도 줄이기 (Rate Control)
-
수동 요청은 몇 초 간격으로 천천히 시도
-
자동화된 스크립트는
sleep()혹은setTimeout()삽입
3-2. Rate Limiter 설정 확인 및 수정
-
Open WebUI 또는 프록시(Nginx, Cloudflare 등) 설정 파일 확인
예시 (Nginx):nginxlimit_req_zone $binary_remote_addr zone=mylimit:10m rate=1r/s; limit_req zone=mylimit burst=5 nodelay;
3-3. 백엔드 API Key 상태 확인
-
OpenAI, Gemini 등의 API Key가 요금 초과, 호출 제한 상태인지 확인
-
로그에서 아래와 같은 메시지 확인:
luastatus: 429 error: Rate limit exceeded
3-4. Open WebUI의 로그 확인
-
Docker로 구성된 경우:
bashdocker logs openwebui -
Open WebUI의
backend디렉토리에 있는 로그 파일에서 에러 패턴 검색
3-5. IP 제한 우회(테스트 용)
-
테스트 목적이라면 VPN 또는 프록시를 변경하여 제한 우회 가능
단, 윤리적 문제나 서비스 정책 위반 주의
✅ 4. 참고: OpenAI Rate Limit 예시
| 요금제 | 분당 요청 제한 | 초당 토큰 제한 |
|---|---|---|
| Free | 3 RPM | 1500 TPS |
| Paid | 60 RPM 이상 | 요금제별 다름 |
✅ 5. 최종 팁
-
n8n, Postman, 크론잡 등을 통해 Open WebUI를 자동 호출 중이라면, 가장 먼저 이 부분의 호출 횟수를 제한하세요.
-
API 호출 시 exponential backoff 방식 적용도 좋습니다 (재시도 간격을 늘리며 호출).
댓글 없음:
댓글 쓰기
참고: 블로그의 회원만 댓글을 작성할 수 있습니다.