Mon compte est soumis à une limitation de débit (limitation d'API) lorsque j'effectue des opérations d'enregistrement de ressources en bloc sur ma zone hébergée Amazon Route 53. Comment puis-je résoudre ce problème ?

Lorsque vous effectuez des opérations d'enregistrement de ressources en bloc pour votre zone hébergée dans Route 53, il est possible que vous receviez une erreur HTTP 400 (Bad Request). Un en-tête de réponse contenant un élément Code avec la valeur Throttling et un élément Message avec la valeur Rate exceeded indique une limitation de débit.

Avertissement : la limitation de débit se produit lorsque le nombre de demandes d'API est supérieur à la limite stricte de cinq demandes par seconde (par compte).

Si Route 53 ne peut pas traiter la demande avant que la demande suivante pour la même zone hébergée n'arrive, les demandes suivantes sont rejetées avec une autre erreur HTTP 400. L'en-tête de réponse contient un élément Code dont la valeur est PriorRequestNotComplete et un élément Message dont la valeur est la demande a été rejetée car Route 53 était toujours en train de traiter une demande précédente.

Remarque : les appels d'API effectués par des utilisateurs IAM au sein d'un même compte sont pris en compte dans la limitation du débit global pour le compte et affectent les appels d'API effectués à partir de la console de gestion AWS.

Pour éviter une limitation de débit, vous pouvez avoir recours aux méthodes suivantes :

Traitement des demandes par lot

Groupez les opérations individuelles de même type dans une seule opération de modifications par lot pour réduire les appels d'API.

Remarque : les demandes UPSERT (mise à jour et insertion) sont comptabilisées deux fois.

Par exemple, vous pouvez demander à créer (CREATE), supprimer (DELETE) ou répertorier (LIST) de nombreux registres avec une seule opération de traitement par lot.

Utilisation des nouvelles tentatives après erreur et du backoff exponentiel

Ajoutez les nouvelles tentatives après erreur et le backoff exponentiel à vos appels d'API Route 53.

Par exemple, utilisez un algorithme de backoff exponentiel simple qui tente à nouveau l'appel en 2^i secondes, i représentant le nombre de nouvelles tentatives.

Randomisation des heures de début

Randomisez l'heure de début des appels d'API Route 53. Assurez-vous qu'il n'y a pas plusieurs applications exécutant la logique en même temps, car des demandes simultanées peuvent entraîner une limitation.

Introduction d'un « temps de repos » entre les appels

Si les appels de fonctions de code à destination des API Route 53 sont consécutifs, ajoutez un « temps de repos » entre deux appels pour réduire le risque de limitation.

Remarque : si le débit de votre compte est toujours limité après avoir utilisé ces méthodes de dépannage, ouvrez une demande de support avec Route 53 pour obtenir de l'aide, afin de localiser l'adresse IP source des appels d'API qui dépassent le seuil par seconde. Vous pouvez ensuite fermer les sources inutiles ou utiliser ces méthodes de dépannage pour résoudre le problème.


Cette page vous a-t-elle été utile ? Oui | Non

Retour au Centre de connaissances AWS Support

Vous avez besoin d'aide ? Consultez le site d'AWS Support Center

Publication : 09/08/2018