API pubbliche
Ogni chiave API riceve un limite per piano, con burst per i client corretti e un Retry-After preciso per gli altri.
Rate limit atomici lato server. GCRA in un solo comando, oppure limiter con nome a finestra scorrevole, token bucket o leaky bucket. Niente Lua.
10 richieste al minuto per l'utente 42. La risposta dice consentita, il limite e quante ne restano.
Una dimostrazione animata con comandi HotKV reali e risposte di esempio. Clicca su un passo qualsiasi per andarci. Comandi e risposte restano in inglese, esattamente come li digiti e li vedi in HotKV.
Un'API senza limiti è a un solo client scorretto da un disservizio. Fare il controllo nel codice dell'applicazione significa una lettura, un calcolo e una scrittura, e le richieste concorrenti passano negli spazi tra un'operazione e l'altra. Molti team finiscono per mantenere uno script Lua solo per renderlo atomico.
GCRA.LIMIT decide e registra in un solo passo, quindi due client concorrenti non possono passare entrambi sullo stesso stato, e il limite si ricarica in modo regolare invece di azzerarsi ai confini della finestra. Per i limiti che gestisci per nome, RATELIMIT.CREATE configura un limiter a finestra scorrevole, token bucket o leaky bucket con statistiche su cosa ha consentito e negato.
10 richieste al minuto per l'utente 42. La risposta dice consentita, il limite e quante ne restano.
GCRA.LIMIT ratelimit:user:42 60000 10Lo scraper esaurisce il suo margine di burst e poi gli viene detto quanto aspettare. Una richiesta negata non cambia nulla.
GCRA.LIMIT ratelimit:bot:7 60000 10I clienti del piano gratuito hanno 100 richieste al minuto su una finestra scorrevole.
RATELIMIT.CREATE free_plan 100 60000 ALGO sliding_windowUn endpoint di esportazione costa 20 unità, quindi consuma una parte maggiore della quota.
RATELIMIT.CHECK free_plan customer:881 COST 20Impostazioni, chiavi tracciate e totali delle richieste consentite e negate.
RATELIMIT.STATS free_planOgni chiave API riceve un limite per piano, con burst per i client corretti e un Retry-After preciso per gli altri.
I tentativi per IP e per account sono limitati per rallentare il credential stuffing.
Le chiamate a un'API partner o a un provider LLM restano sotto la loro quota su tutti i worker della flotta.
Ricarica regolare con burst, controllo e aggiornamento atomici, un tempo di attesa in caso di rifiuto.
GCRA.LIMITGCRA.RESETFinestra scorrevole, token bucket o leaky bucket, creati una volta e controllati per chiave.
RATELIMIT.CREATERATELIMIT.CHECKLe chiamate costose possono contare come più richieste. GCRA.LIMIT accetta un conteggio, RATELIMIT.CHECK un COST.
COSTTotali di richieste consentite e negate per limiter.
RATELIMIT.STATSNo. Sia GCRA.LIMIT sia RATELIMIT.CHECK eseguono l'intero controllo come un unico comando atomico.
GCRA.LIMIT non richiede configurazione e funziona su ogni piano. I limiter con nome RATELIMIT.* aggiungono la scelta dell'algoritmo e le statistiche, e fanno parte dei piani Performance e Scale.
Niente. Una chiamata GCRA negata lascia il limiter invariato, quindi un client che riprova non viene penalizzato ulteriormente.
HotKV parla il protocollo Redis, quindi puoi puntarci un client esistente ed eseguire questi stessi comandi.