Burst concurrency constraint!

0

Hello, I am currently managing an account with a concurrency of 20,000 and a burst concurrency of 3,000 for a web-based application. In the context of an AWS Step Function, I have implemented a Lambda function within a distributed map. When a user uses the application, the map generates approximately 25,000 requests for the Lambda at the same time (I am avoiding batching due to its adverse impact on the running time of the Lambda function). Considering the operational context where the web application is utilized approximately 5-6 times a day per their need (no specific time).

My question is how to avoid throttling while burst concurrency represents a constraint. Is there a way to ask AWS to increase the burst concurrency? I have also read about provisioned concurrency but it seems that it is expensive for my application. Thanks in advance!

1回答
0
承認された回答

First, we just announced a new scaling behavior for Lambda: Each function now starts with a limit of 1000 and gets an additional 1000 every 10 seconds.

Saying that, it will not solve your issue, as you still need 25K at the same time. What you need to do is catch the throttling errors in the state machine and retry. Alternatively, if your use case allows this, you cam invoke your functions asynchronously (only if your state machine does not need the functions' response).

Regarding Provisioned Concurrency, as you said, it will be costly, but if you know when you will need it, you can enable it before, let the state machine run, and then disable it. But, it will take longer the overall process.

profile pictureAWS
エキスパート
Uri
回答済み 4ヶ月前
  • Thank you. I will learn about these two alternatives.

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン

関連するコンテンツ