Ma tâche AWS Batch échoue et je reçois le message d'erreur « Erreur de réception de trop nombreuses demandes ».
Brève description
AWS Batch limite toutes les requêtes d'API pour les comptes AWS en fonction de la région AWS du compte. Cette action permet d’assurer des performances constantes et une utilisation équitable pour tous les clients.
Les quotas d'API AWS Batch s'appliquent généralement à toutes les API, y compris aux appels d' API DescribeJobs et SubmitJob.
Remarque : Le nombre maximum de transactions par seconde (TPS) pour chaque compte pour les appels d'API AWS Batch, y compris les opérations SubmitJob, est de 50. Il s'agit d'une limite fixe.
Lorsque vous atteignez vos quotas d'API AWS Batch, AWS Batch renvoie le message d'erreur suivant :
« Getting error Too Many Requests (Service: AWSBatch ; Code d'état : 429 ; Code d'erreur : TooManyRequestsException). »
Il existe deux raisons courantes pour lesquelles les erreurs Getting error Too Many Requests se produisent :
- Vous soumettez plusieurs tâches en même temps par programmation, via l'interface de ligne de commande (CLI) AWS ou des kits SDK AWS.
- Vous utilisez AWS Lambda pour soumettre plusieurs tâches.
Remarque : Les quotas d'API s'appliquent uniquement aux points de terminaison AWS. Ces quotas ne s'appliquent pas à votre compte.
AWS veille à ce que tous les appels à toutes les API Amazon ne dépassent pas le taux de requêtes d'API maximum autorisé. Le taux maximum de requêtes d'API peut varier selon les régions
Résolution
Utilisez de nouvelles tentatives et un algorithme de backoff exponentiel avec Jitter, puis resoumettez votre tâche
Pour plus d'informations, consultez la section Backoff exponentiel et jitter.
Utilisez les tableaux de tâches AWS Batch pour soumettre plusieurs tâches à l'aide d'un seul appel d'API SubmitJob
Pour plus d'informations, consultez les sections Array jobs et SubmitJob.
Remarque : Les tâches de tableau AWS Batch vous permettent de soumettre jusqu'à 10 000 copies d'une tâche par appel d’API.