超出 Fargate ThrottlingException 速率
Fargate ThrottlingException Rate exceeded
我正在尝试一次 运行 30 个 Fargate 任务并且我正在接收 "ThrottlingException: Rate exceeded"。
在ECS Service Limits中提到并发 Fargate 任务的默认限制是 50。
除了并发 Fargate 任务的数量之外,我是否因为其他原因而受到限制?例如,Fargate 是否为每个任务注册一个容器实例;因此我超过了容器实例注册率?
我联系了 AWS 支持并得到以下答复:
ECS' run-task API, when launching a Fargate task, is throttled at 1 TPS
by default with a burst rate of 10. This means that you can--at
most--launch 10 tasks every 10 seconds. As such, we recommend that
[you] use some backoff strategy on [your] end when launching tasks.
Alternatively, [you] can use ECS create-service, in which case ECS will
ensure that all tasks are run in time while honoring the throttle
rate.
基本上,虽然我可以同时 运行 30 个任务,但由于 运行-任务 API 的节流,我无法同时启动所有 30 个任务Fargate 任务。
截至 2018 年 11 月 7 日,AWS 文档中未提及此限制:https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service_limits.html
我正在尝试一次 运行 30 个 Fargate 任务并且我正在接收 "ThrottlingException: Rate exceeded"。
在ECS Service Limits中提到并发 Fargate 任务的默认限制是 50。
除了并发 Fargate 任务的数量之外,我是否因为其他原因而受到限制?例如,Fargate 是否为每个任务注册一个容器实例;因此我超过了容器实例注册率?
我联系了 AWS 支持并得到以下答复:
ECS' run-task API, when launching a Fargate task, is throttled at 1 TPS by default with a burst rate of 10. This means that you can--at most--launch 10 tasks every 10 seconds. As such, we recommend that [you] use some backoff strategy on [your] end when launching tasks. Alternatively, [you] can use ECS create-service, in which case ECS will ensure that all tasks are run in time while honoring the throttle rate.
基本上,虽然我可以同时 运行 30 个任务,但由于 运行-任务 API 的节流,我无法同时启动所有 30 个任务Fargate 任务。
截至 2018 年 11 月 7 日,AWS 文档中未提及此限制:https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service_limits.html