5
votes

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?

1

1 Answers

7
votes

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