Comparer les règles sur les quotas et SpikeAlert

Vous consultez la documentation d'Apigee Edge.
Accédez à la documentation sur Apigee X.
info

Règles sur les quotas et SpikeArrest : choisir la règle qui répond le mieux à vos besoins en limitation de débit. Consultez le graphique comparatif ci-dessous.

Quota SpikeArrest
Utilisez-la pour : Limiter le nombre de connexions que les applications peuvent établir avec le backend cible de votre proxy d'API sur une période donnée. Protéger le backend cible de votre proxy d'API contre les pics de trafic graves et les attaques par déni de service.
Ne l'utilisez pas pour :

Ne l'utilisez pas pour protéger le backend cible de votre proxy d'API contre les pics de trafic.

Utilisez pour cela la règle SpikeArrest.

Ne l'utilisez pas pour compter et limiter le nombre de connexions que les applications peuvent établir avec le backend cible de votre proxy d'API sur une période donnée.

Pour cela, utilisez la règle de quota.

Stocke un décompte ? Oui Non
Bonnes pratiques pour associer la règle :

Associez-la au PreFlow de requête ProxyEndpoint, généralement après l'authentification de l'utilisateur.

Cela permet à la règle de vérifier le compteur de quotas au niveau du point d'entrée du proxy d'API.

Associez-la au PreFlow de requête ProxyEndpoint, généralement au tout début du flux.

Cela offre une protection contre les pics au niveau du point d'entrée du proxy d'API.

Code d'état HTTP une fois la limite atteinte :

500 Erreur interne du serveur.*

500 Erreur interne du serveur.*

Bon à savoir :
  • Le compteur de quota est stocké dans Cassandra.
  • Configurez la règle afin de synchroniser le compteur de manière asynchrone pour enregistrer des ressources.
  • La synchronisation asynchrone du compteur peut entraîner un retard dans la réponse de limitation du débit, ce qui peut provoquer un nombre d'appels légèrement supérieur à la limite que vous avez définie.
  • La limitation est effectuée en fonction de l'heure à laquelle le dernier trafic a été reçu. Cette durée est stockée par processeur de messages.
  • Si vous spécifiez une limitation du débit de 100 appels par seconde, un seul appel toutes les 1/100 secondes (10 ms) sera autorisé sur le processeur de messages. Un deuxième appel se produisant dans les 10 ms qui suivent sera refusé.
  • Même avec une limitation du débit élevée par seconde, les requêtes simultanées peuvent entraîner des rejets.
En savoir plus : Règles relatives aux quotas Règle SpikeArrest

* Pour la règle de quota et la règle d'arrêt des pics, le code d'état HTTP par défaut pour le dépassement de la limitation du débit est une valeur 500 Internal Server Error générique. Vous pouvez remplacer le code d'état de ces règles par 429 Too Many Requests en ajoutant une propriété au niveau de l'organisation (features.isHTTPStatusTooManyRequestEnabled). Si vous êtes un client Cloud, contactez l'assistance Apigee Edge pour activer la propriété.