上次更新日期:2021 年 4 月 29 日
我的 AWS Batch 作业失败,我收到“Getting error Too Many Requests”错误。如何解决此错误?
简短描述当您达到 AWS Batch API 限制时,AWS Batch 返回以下错误消息:
“Getting error Too Many Requests(服务:AWSBatch;状态代码:429;错误代码:TooManyRequestsException)。”
发生 Getting error Too Many Requests 错误有两个常见的原因:
使用 AWS 命令行界面 (CLI) 或 AWS 开发工具包以编程方式同时提交多个作业 使用 AWS Lambda 提交多个作业。注意:AWS Batch API 限制通常适用于,但不仅限于 DescribeJobs 和 SubmitJob API 调用。
解决方法注意:当您对错误进行排查时,请考虑以下事项:
API 限制不适用于您的账户,但适用于 AWS 终端节点。 根据不同的区域,AWS 会对每个 AWS 账户的所有 Amazon API 请求进行限流。如此一来,它可以防止任何账户向服务终端节点发起过多请求。 AWS 会确保所有 Amazon API 的所有调用不会超过最大允许 API 请求速率。不同区域的最大 API 请求速率可能会有所不同。使用重试与指数退避算法和抖动,然后重新提交您的作业
有关更多信息,请参阅指数退避和抖动。
使用 AWS Batch 阵列作业通过单个 SubmitJob API 调用提交多个作业
有关更多信息,请参阅阵列作业和 SubmitJob。
注意:AWS Batch 阵列作业允许您最多提交 10000 份作业副本。