I am attempting to run 30 Fargate tasks at once and I am receiving "ThrottlingException: Rate exceeded".
In the ECS Service Limits, it mentions that the default limit for concurrent Fargate tasks is 50.
Am I being throttled for something other than the number of concurrent Fargate tasks? For example, is Fargate registering a container instance for each task; and thus I'm exceeding the container instance registration rate?
I reached out to AWS support and got the following answer:
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.
Essentially, although I could run 30 tasks concurrently, I couldn't start all 30 tasks at the same time due to the throttling of the run-task API for Fargate tasks.
As of November 7th 2018, this limit is not mentioned in the AWS documentation: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service_limits.html
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With