Hello Devs,
AWS Lambda and my connection is like a heart connection. AWS Lambda was launched on 13 November 2014 and I still remember the company which I worked for was one of the first users of AWS Lambda. When I joined I was hearing a lot of noise in the team about what to do with lambda. Have you deployed lambda? etc etc. I thought lambda might be a mathematical term which we learn in engineering maths. Same time I was curious because I would like to know if this maths term is getting used during application development.
When I got work to develop one sample lambda I found out that this is not that maths term lambda but it is AWS lambda which is one of the services.
Let's understand what AWS Lambda is.
Before that let's check out why AWS gave the name to this service Lambda (λ). There is no right history I found around why it is named lambda.
Based on my research what I understand is that the wavelength keeps varying and λ indicates the wavelength of any wave. On a similar note, AWS lambda handles 1- tens of thousands of requests ( variation ).
But in an actual statement From Tim Wagner, the founding General Manager of AWS Lambda, on the Twitch chat room while speaking at: AWS Serverless Community Day:
It was our secret project name. One of the senior S3 devs who was mentoring our team came up with it. We liked the name so much that we convinced Andy Jassy to let us keep it for real. The name of the person was Seth M
AWS wanted to create such a service which will be developer friendly where developers should not worry about managing servers, which OS should choose, language versatile, user-friendly, and fastest way to check. That is why AWS lambda was introduced.
AWS Lambda is like when you order pizza you decide on pizza bread, toppings, veg/non veg exactly similar note developer chooses which language Python, GoLang, .net, Java etc, how much memory is needed, what is execution time ( pizza delivery time whether immediate or schedule ) while creating lambda and just create a function with this configuration and ready to use similar like pizza ready to eat. It is modular like pizza slices.
Technically Lamba is a zero administration service. You don't have to deal with EC2 instances. You don’t have to install any OS or language environments. You don’t need to think about scaling or fault tolerance. It is a very cost-effective basis.
Then Lambda is serverless. Right?
Why is it called Serverless?
Yes. AWS Lambda is serverless. Yes because you can’t see the server or you can’t log into the server for debugging or you can’t decide which server to configure. Everything happens behind the wall you just have to choose a platform. So that can focus on developing code, not on servers. That is why it is called Serverless. AWS Lambda provides similar things as we discussed above.
AWS lambda is a function in which you write code inside and run it. It functions as a service ( FaaS).
What is FaaS?
AWS Lambda was the first FaaS ( Function as a Service) provided by the public cloud. AWS lambda costs to pay as you go, which means only you have to pay when your lambda function code executes.
AWS Lambda is a very cheap service in AWS. According to my knowledge, you can get 1 million lambda function invocations FREE every month. It's very helpful for Early-stage startups who want to build their Serverless applications. You will not believe the company which I mentioned at the start of the blog where we used more than 200+ AWS lambda. We didn't pay a single penny for those executions. We never cross 1 million executions for each Lambda.
Anyone can play with AWS Lambda without much worrying about the cost and infra. It's a very cool service and one of my favourite services in AWS. Many of my research code snippets I tested on AWS Lambda.
References :
AWS Serverless Community Day talk - https://www.twitch.tv/aws/video/661855412 ( 00:13:09 )
AWS Lambda Launch - https://aws.amazon.com/blogs/aws/run-code-cloud/
When to use Lambda: https://docs.aws.amazon.com/lambda/latest/dg/welcome.html#when-to-use-lambda