API publiques
Chaque clé d'API reçoit une limite selon son offre, avec des rafales pour les clients corrects et un Retry-After précis pour les autres.
Des limites de débit atomiques, côté serveur. GCRA en une commande, ou des limiteurs nommés à fenêtre glissante, token bucket ou leaky bucket. Aucun Lua requis.
10 requêtes par minute pour l'utilisateur 42. La réponse indique l'autorisation, la limite et le nombre restant.
Une démonstration animée avec de vraies commandes HotKV et des exemples de réponses. Cliquez sur une étape pour y accéder directement. Les commandes et les réponses restent en anglais, exactement comme vous les saisissez et les voyez dans HotKV.
Une API sans limites n'est qu'à un client défaillant d'une panne. Faire la vérification dans le code de l'application implique une lecture, un calcul et une écriture, et des requêtes simultanées se glissent entre les deux. Beaucoup d'équipes finissent par maintenir un script Lua rien que pour rendre l'opération atomique.
GCRA.LIMIT décide et enregistre en une étape, si bien que deux clients simultanés ne peuvent pas passer tous les deux sur le même état, et la limite se recharge de façon fluide au lieu de se réinitialiser aux bornes d'une fenêtre. Pour les limites que vous gérez par nom, RATELIMIT.CREATE crée un limiteur à fenêtre glissante, token bucket ou leaky bucket, avec des statistiques sur ce qu'il a autorisé et refusé.
10 requêtes par minute pour l'utilisateur 42. La réponse indique l'autorisation, la limite et le nombre restant.
GCRA.LIMIT ratelimit:user:42 60000 10Le scraper épuise sa marge de rafale, puis on lui indique combien de temps attendre. Une requête refusée ne change rien.
GCRA.LIMIT ratelimit:bot:7 60000 10Les clients de l'offre gratuite ont droit à 100 requêtes par minute sur une fenêtre glissante.
RATELIMIT.CREATE free_plan 100 60000 ALGO sliding_windowUn endpoint d'export coûte 20 unités et consomme donc une plus grande part du quota.
RATELIMIT.CHECK free_plan customer:881 COST 20Paramètres, clés suivies et totaux des requêtes autorisées et refusées.
RATELIMIT.STATS free_planChaque clé d'API reçoit une limite selon son offre, avec des rafales pour les clients corrects et un Retry-After précis pour les autres.
Les tentatives par IP et par compte sont limitées pour freiner le credential stuffing.
Les appels vers une API partenaire ou un fournisseur LLM restent sous leur quota, sur l'ensemble des workers de la flotte.
Recharge fluide avec rafales, vérification et mise à jour atomiques, délai de nouvel essai en cas de refus.
GCRA.LIMITGCRA.RESETFenêtre glissante, token bucket ou leaky bucket, créés une fois et vérifiés par clé.
RATELIMIT.CREATERATELIMIT.CHECKLes appels coûteux peuvent compter pour plusieurs requêtes. GCRA.LIMIT prend un nombre, RATELIMIT.CHECK un COST.
COSTTotaux des requêtes autorisées et refusées par limiteur.
RATELIMIT.STATSNon. GCRA.LIMIT comme RATELIMIT.CHECK effectuent toute la vérification en une seule commande atomique.
GCRA.LIMIT ne demande aucune configuration et fonctionne avec toutes les offres. Les limiteurs nommés RATELIMIT.* ajoutent le choix de l'algorithme et des statistiques, et font partie des offres Performance et Scale.
Rien. Un appel GCRA refusé laisse le limiteur inchangé, et un client qui réessaie n'est pas pénalisé davantage.
HotKV parle le protocole Redis. Vous pouvez donc y connecter un client existant et exécuter ces mêmes commandes.