Rate limiting (ops)
Limitare il numero di richieste che un client può fare in un dato periodo, per proteggere un servizio da sovraccarico, abusi e consumo iniquo delle risorse. Superato il limite, le richieste vengono respinte (spesso con HTTP 429 «Too Many Requests»).
Il funzionamento: gli algoritmi più comuni sono il token bucket (un secchio si riempie di token a ritmo costante; ogni richiesta costa un token, senza token la richiesta è respinta; consente raffiche fino alla capienza del secchio) e il leaky bucket / sliding window (un ritmo più uniforme). Il limite si imposta per client (IP, chiave API, utente). Casi d'uso: protezione dal sovraccarico (un client impazzito non può abbattere il servizio), equità (un cliente non può consumare tutta la capacità a scapito degli altri), protezione dagli abusi (rallenta brute force, scraping, DoS) e gestione delle quote (piano gratuito contro piano a pagamento). Diverso dal backpressure (controllo di flusso interno tra componenti): il rate limiting è di norma un limite esterno all'ingresso (API gateway, reverse proxy, mesh). Termine affine: throttling. Un meccanismo fondamentale di protezione ed equità. Imparentato con backpressure (ops) e circuit breaker (ops).