보안
어려움
코딩
분산 Rate Limiting
분산 환경에서의 API 속도 제한
45분
90점
#3776
문제 설명
여러 서버에서 동작하는 분산 Rate Limiter를 구현하세요.
알고리즘 비교
| 알고리즘 | 특징 | 단점 |
|---|---|---|
| Fixed Window | 구현 간단 | 경계 문제 |
| Sliding Window Log | 정확함 | 메모리 사용 |
| Sliding Window Counter | 균형 | 근사치 |
| Token Bucket | 버스트 허용 | 복잡 |
| Leaky Bucket | 일정한 속도 | 버스트 불가 |
요구사항
- Redis 기반 분산 처리
- Lua 스크립트로 원자성 보장
- 여러 시간 단위 제한 (초/분/시간)
- 사용자/IP/API 키별 제한
- 동적 제한 조정
응답 헤더
X-RateLimit-Limit: 100 X-RateLimit-Remaining: 95 X-RateLimit-Reset: 1640000000 Retry-After: 30
실행 버튼을 눌러 코드를 실행하세요.