AWS api calls are throttled when there are too many parallel builds
See original GitHub issueWe have around 10 parallel builds per branch/commit triggered from Jenkins. When two or three branches run in parallel, we get
Rate exceeded (Service: AWSCodeBuild; Status Code: 400; Error Code: ThrottlingException
and the build fails.
This is because the CodeBuild plugin polls AWS CodeBuild every 5 seconds. When there are thirty builds in parallel, the number of requests made in a small interval of time is high enough for the AWS api infrastructure to throttle the calls.
Issue Analytics
- State:
- Created 6 years ago
- Comments:7 (3 by maintainers)
Top Results From Across the Web
Throttle API requests for better throughput - AWS Documentation
When request submissions exceed the steady-state request rate and burst limits, API Gateway begins to throttle requests. Clients may receive 429 Too Many ......
Read more >Throttling requests to your HTTP API - Amazon API Gateway
Throttling requests to your HTTP API ... You can configure throttling and quotas for your APIs to help protect them from being overwhelmed...
Read more >Managing and monitoring API throttling in your workloads
When the allotted rate limit for an API call is exceeded, you'll receive an error response and the call will be throttled. Excessive...
Read more >Throttling a tiered, multi-tenant REST API at scale using API ...
First, let's focus on how Amazon API Gateway can be used to throttle REST APIs with fine granularity using Usage Plans and API...
Read more >Rate Limiting Strategies for Serverless Applications
When launching a Fargate task using the Amazon ECS run-task API, the call is throttled at 1 transaction per second by default with...
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
The AWS Java SDK includes a Backoff Strategy: com.amazonaws.retry.PredefinedRetryPolicies.SDKDefaultBackoffStrategy
imho a retry parameter makes no sense from the User Perspective. Maybe this is a major drawback of the solution - because of, normal Plugin User don’t understands the dependency between ThrottlingExceptions and Retry Counts.
You should start with something hardcoded like max 10 Retry.
https://github.com/envato/stack_master/pull/158/commits/12448d8074bd9ed25da57b30c9c8993e91ce553f#diff-1f8a98128798cdf6364b9ebc6358d44fR29
Merged #35.