Mes appels API Auto Scaling sont réduites. Que faire pour éviter cela ?

Dernière mise à jour : 2021-01-04

Mon application reçoit des erreurs « Taux dépassé » lors de l'appel à Amazon EC2 Auto Scaling, AWS Auto Scaling ou AWS Application Auto Scaling. Comment puis-je éviter ceci ?

Brève description

Les appels d’API en direction de n’importe quel service AWS ne peuvent pas excéder le taux maximal autorisé pour chaque compte et AWS Région. Cela inclut les appels d'API depuis l’interface de ligne de commande (AWS CLI) et AWS Management Console. Si les requêtes d’API dépassent le taux maximal, le message d’erreur « Dépassement du débit » s’affiche et les appels d’API sont ensuite limités.

Amazon EC2 Auto Scaling, AWS Auto Scaling et AWS Application Auto Scaling ont chacun leurs propres compartiments d'accélération API. Cela signifie que tous les appels d'API Amazon EC2 Auto Scaling ont une limite d'API partagée unique. Les appels d'API Amazon EC2 Auto Scaling n'affectent pas la limite des API AWS Application Auto Scaling.

Pour éviter l'erreur « Taux dépassé » et la limitation, vérifiez que votre application effectue uniquement les appels nécessaires.

Remarque : Si vous recevez des erreurs lors de l'exécution de commandes AWS CLI, vérifiez que vous utilisez la version la plus récente d'AWS CLI.

Résolution

Pour éviter que le message « Dépassement du débit » ne s’affiche ou qu’une limitation ne se produise, essayez d’effectuer les procédures suivantes :

Valider les appels « décrire »

Si le nombre d’appels de type « décrire » est trop élevé, ceci a une incidence sur celui des requêtes d’API mesurées par rapport au taux autorisé. Vérifiez votre application pour vous assurer que tous les appels « décrire » sont nécessaires et envisager des solutions autres que les appels « décrire » lorsque cela est possible. Envisagez d'utiliser des notifications push d' Amazon EventBridge qui sont envoyées lorsque des instances changent d'état, par exemple lorsqu'elles démarrent un hook de cycle de vie.

Vérification des appels provenant d’applications tierces

Les applications tierces peuvent effectuer des appels continus à Auto Scaling dans AWS. Vérifiez que vos applications tierces ne font pas d'appels inutiles.

Implémentez de nouvelles tentatives après erreur et des interruptions exponentielles.

Les tentatives d'erreur et les interruptions exponentielles peuvent aider à limiter le taux d'appels d'API. Chaque AWS SDK implémente une logique de relance automatique et des algorithmes d'interruption exponentielle. Pour plus d'informations, consultez la section Nouvelles tentatives après erreur et interruptions exponentielles dans AWS.

Demander une augmentation du quota de service dans le Centre AWS Support

Pour obtenir une augmentation du quota de service, vous devez confirmer que vous avez validé votre taux d'appel API, ainsi que des tentatives d'erreur ou des méthodes de retour exponentielle implémentées. Dans votre demande, vous devez également indiquer la Région et le calendrier liés aux problèmes de limitation.

Évitez les éclats d'activité

Évitez les situations qui provoquent des éclats d'appels d'API. Par exemple, ne définissez pas toutes les instances d'un groupe Amazon EC2 Auto Scaling activer la mise à l'échelle de la protection lorsque vous les lancez. Activez cette option par défaut sur le groupe afin que la protection soit activée par défaut pour toutes les instances.


Cet article vous a-t-il été utile ?


Besoin d'aide pour une question technique ou de facturation ?