API Rate Limiting (Limitazione della frequenza): prevenzione DDoS + protezione da abusi. Limiti: 1) Globale (a livello server): 10000 req/min, 2) Per utente/API key: 100 req/min, 3) Per endpoint: GET /users 1000/min, POST /users 100/min. Tipi: 1) Fixed window (contatore per minuto), 2) Sliding window (orologio scorrevole, più preciso), 3) Token bucket (consente burst). Implementazione: 1) HTTP headers (X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset), 2) Codici di risposta (429 Too Many Requests), 3) Header Retry-After (indica quando riprovare), 4) Database rate limit (Redis ottimale, conteggio query per chiave). Tracciamento per utente: API key/token (identificativo univoco), user ID (se autenticato), indirizzo IP (anonimo). Gestione superamento limiti: 1) Rifiuto immediato (risposta 429), 2) Coda (risposta ritardata), 3) Throttle (risposta più lenta). Best practice: limiti graduati (piano gratuito: 100/min, piano a pagamento: 1000/min), fallback basato su IP (se non autenticato), allowance burst (Token bucket: 100 normale, 500 burst). Gestione app mobile: strategia di backoff (esponenziale: 1s → 2s → 4s), gestione errori (mostrare messaggio 'rate limited', riprovare più tardi), caching (minimizzare le chiamate API).