Cannot run my lambda due to the hard coded memory limit.

0

I am using a lambda function which I recently extended in functionality. Therefore I needed to add another layer (scipy) in order to run the python code. But when I try to add the scipy layer, the lambda is telling me, that my limit of 262MB is exceeded. My lambda is pollin a API and deriving the received data (spectral data). What would be your suggestions to make the function running?

Thanks and BR Tobias

Tobi
已提問 3 個月前檢視次數 112 次
3 個答案
1

Hello.

I have never used "scipy", but what size will it be when layered?
Lambda layers have a limit of 250MB, so if they are larger than this, they cannot be used.
https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html

I think one of the workarounds for layer size is to use a container image as the runtime.
I think you can use this with somewhat larger layers.
https://docs.aws.amazon.com/lambda/latest/dg/images-create.html#images-types

Also, if there is a memory limit during execution, I think there will be no problem if you increase it from the Lambda settings.
https://docs.aws.amazon.com/lambda/latest/dg/configuration-function-common.html#configuration-memory-console

profile picture
專家
已回答 3 個月前
profile pictureAWS
專家
Uri
已審閱 3 個月前
1

As per documention, deployment package limit is 250 MB which is about 262,144,000 bytes . This quota applies to all the files you upload, including layers and custom runtimes. Try removing unnecessary packages,

If you are unable to reduce package size, you can perhaps explore changing from Lambda Python runtime to Lambda container image instead. The code package size limit is 10 GB (maximum uncompressed image size, including all layers)

AWS
專家
Mike_L
已回答 3 個月前
0

If need to process large files or load many large dependencies in AWS Lambda, you can do it by putting them on EFS volume which can be mounted to Lambda.

已回答 3 個月前

您尚未登入。 登入 去張貼答案。

一個好的回答可以清楚地回答問題並提供建設性的意見回饋,同時有助於提問者的專業成長。

回答問題指南