Concurrent executions of Lambda functions

0

I would like to understand how many calls of a Lambda function, through AWS-SDK, I can perform simultaneously. Now I am a free tier and it seems that I can't performe more than 10 concurrently executions. In my project, each client is going to make running a function and so the number of concurrently executions that my aws account can performe would be equal to the number of clients that my web app can serve simultaneously. I will be fine with 1000 at the beginning. Is it possible? How many concurrently executions my aws account (if not anymore free tier) could manage of a single function and overall through all functions by default? I will use Europe (Milano) region. With my account, right now, I can performe 10 concurrent executions of my function. I attached my concurrency data in the image:Enter image description here

And my code:;

import AWS from 'aws-sdk';

AWS.config.update({ accessKeyId: 'idKey', secretAccessKey: 'SecretKey', region: 'eu-west-3', });

const lambda = new AWS.Lambda();

var Utente = {feature: "feature"};

const params = { FunctionName: 'Lambda', Payload: JSON.stringify(Utente) }; ˙ lambda.updateFunctionConfiguration({ FunctionName: 'Lambda', Environment: { Variables: {} } }).promise();

function Invokation(params){ lambda.invoke(params, (error, data) => { if (error) { console.log(error) } else { console.log("OK") } }) };

for (let index = 0; index < 20; index++) { console.log(index); Invokation(params); }

1 回答
2

As you noted, you can have concurrent executions up to the account limit per region. It's likely that you have a lower limit due to the account age or service usage. You can request a service quota increase to have a higher limit as needed. Also from your code, as you mentioned, you can make SDK calls simultaneously or in sequence to invoke multiple concurrent executions. Your concurrent executions can be consumed by a single or multiple Lambda functions. Those Lambda functions without reserved concurrency share the account level concurrency limit. If you want to avoid a situation where a single function consumes all the account level limit, you can allocate some reserved concurrency to a particular function.

New AWS accounts have reduced concurrency and memory quotas. AWS raises these quotas automatically based on your usage. You can also request a quota increase.

AWS
Taka_M
已回答 1 年前
profile pictureAWS
专家
已审核 1 年前
  • I understood, but I'm still asking myself why I have only 10 concurrent executions available? I read everywhere that the default concurrent executions are 1000 and I would be ok with that. Do I have only 10 due to the fact that I am a free tier? Why otherwise?

  • As mentioned in my answer, it can be due to the account age. You can always open a service limit increase request as needed.

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则