Rate Limiting Architecture
Overview
The rate limiting system prevents abuse and ensures fair resource allocation across users. It uses Redis-based sliding window counters with plan-based limits.
Architecture
Request → Check User Plan → Apply Limits
│
┌───────────┼───────────┐
│ │ │
▼ ▼ ▼
┌───────┐ ┌───────┐ ┌───────────┐
│ GUEST │ │ PRO │ │ ULTRA │
│50/15m │ │500/1h │ │2000/1h │
│IP-based│ │User-based│ │User-based │
└───────┘ └───────┘ └───────────┘Guest Rate Limiting
File: src/server/middlewares/rateLimiter/rateLimiter.ts