In this post we are going to go through the best practices while building an AWS Lambda function. In order to go through this blog you should know what is it and you should ideally have built at least a simple function around it so you have your bearings right, you can checkout this blog post of mine where I take you through step by step in building your first AWS Lambda function.
Understanding how AWS Lambda scales
AWS Lambda service is simply, infrastructure which gets allocated to your function on demand as per need. When the need increases new infrastructure is automatically created internally which executes your function. The size of the unit of infrastructure is defined by you when you create the function, AWS allows us to select memory for the function and CPU allocation is directly proportional to the memory that you chose, what this means is that if you choose 128MB of memory you get x CPU while choosing 256MB gives you 2x of the same.
Lambda scales on the basis of unit of work, while unit of work
varies on the Lambda source type. Each unit of work is executed on a
dedicated infrastructure while the said infrastructure is open for
re-use for subsequent calls but not while the current call is
executing, while you pay for only the duration of execution of individual requests proportional to the memory allocation of the function.