DEV Community

John Demian
John Demian

Posted on

AWS Lambda FAQ

Alt text of image

Have you heard about AWS Lambda, the new computing system that offers you a variety of benefits like real-time data processing and custom back-end service? Wish you knew the ins-and-outs of this system so you could decide if it's the right fit for you?

With so much information available about AWS Lambda, it can be hard to know what it is without an AWS Lambda FAQ.

AWS Lambda FAQ

Curious about what AWS Lambda is, what it can do for you, and how much it will cost you and your business? Well, we're here to help! Here's a breakdown of frequently asked questions about this system, so you can determine if it's the right option for you.

What is AWS Lambda?

AWS Lambda is an Amazon serverless computing system that runs code and automatically manages your underlying compute resources. It lets you automatically run code in response to many types of events, such as HTTP requests from Amazon API gateway, table updates in Amazon DynamoDB, and state transitions. It also enables you to extend to other AWS services with custom logic, and even create your own back-end services.

The service works by running your code on a high-availability computer infrastructure. It then performs all the administrative duties of that compute resource, like providing maintenance on your server and operating system, automatically scaling and managing your capacity provisions, and handling security patch deployment and code monitoring and logging.

The only work required on your end is supplying code for it to run.

How Does AWS Lambda Work?

While AWS Lambda may seem confusing at first, it really isn't. In fact, it's actually just a 4-step simple process.

Start off by uploading your code to AWS Lambda. From there, set up your code to trigger from other AWS services, HTTP endpoints, or mobile apps. AWS Lambda will only run your code when it's triggered and will also only use the computing resources needed to run it.

What's better? You only have to pay for the compute time you use!

What are the Advantages of AWS Lambda?

AWS Lambda offers a variety of benefits to its users. Here are 3 of the biggest benefits you should know about when deciding if AWS Lambda is right for you:

It Doesn't Require You to Manage Any Servers

Since AWS Lambda automatically runs your code there's no need for you to manage the server. Simply write your code and upload it to Lambda and you're good to go.

It Empowers You to Easily Scale

AWS Lambda runs code in response to each trigger, so your application is automatically scaled. Your code also runs in parallel and processes each trigger individually, so scaling is done precisely with the size of your workload.

It's Affordable

With AWS Lambda, you don't pay anything when your code isn't running. You'll only be charged for every 100ms your code executes and the number of times your code is actually triggered.

What Can You Build with AWS Lambda?

AWS Lambda can build a variety of things. Here's a quick list of just a few use cases for it:

  • Data processing

  • Real-time file processing

  • Data validation

  • Filtering

  • Sorting

  • Real-time stream processing

  • 3rd-party API requests

As you can see, AWS lambda can accomplish a variety of things. To learn more about AWS Lambda can do, visit this page.

How Much Does AWS Lambda Cost?

As previously mentioned, with AWS Lambda you only pay for what you use, factoring in the number of requests and duration of your code. Lambda considers a request to be each time it starts executing in response to a trigger such as an event notification or an invocation volume.

The duration of the code is calculated from the moment your code begins executing until it returns or is terminated.

If you're unsure about whether AWS Lambda is right for you, there is a free tier option available to try. This option includes 1M free requests per month, and 400,000 GB-seconds of compute time per month.

If you'd like to learn more about AWS Lambda, check out Amazon's handy AWS Lambda FAQ.

Final Thoughts on AWS Lambda

If you're looking to streamline processes and cut back on your coding efforts, you should absolutely invest in AWS Lambda. By reviewing the AWS Lambda FAQ, you can orient yourself on the ins-and-outs of this computing system and determine if it's right for you.

Once you have finished going through the frequently asked questions you will probably start to wonder about the observability aspect of your serverless app or to better put it, the lack thereof. You wouldn't be the first one to think like that, but luckily there are a number of services that can help you in that regard. Take for example, they can help you monitor your serverless environment, set up alerts and keep track of costs without adding any strain to your application. Furthermore, they have a pretty decent free tier that is more than enough to get you started. You can sign up right now to start monitoring your serverless app for free!

Top comments (6)

tux0r profile image

I find the wording confusing. If a software runs remotely on a computer (or multiple computers), it is not "serverless" because those are, in fact, servers...?

johndemian profile image
John Demian

Hey buddy. I appreciate you taking the time to read through the article and pointing out the confusing phrase, but I can't seem to find the section you are talking about. Can you point me to it?

tux0r profile image

It's under "What is AWS Lambda?":

AWS Lambda is an Amazon serverless computing system

A remote "computing system" is a server (or a server cluster), according to my limited understanding.

Thread Thread
johndemian profile image
John Demian

The term serverless is a tad misleading, I'll give you that but the technology got its name, not from the fact that it lacks servers but because you, the developer, don't manage them or have to worry about them, ever!

Here's a little article that might help you:

Thread Thread
tux0r profile image

Wouldn't that mean that every single webspace hoster has been "serverless" since the 90s? Because the customers won't have to manage or worry about them, ever.

Thank you for that article. I still find it confusing... I'm not a friend of buzzword bingo. A server is a server even if I can't see it. Alas, if that's what the technology should be called, I begrudgingly accept.

I wish more people would care about technology. We seem to go back into a time where computers are seen as "magic devices" doing "magic things". Sorry for being so stubborn about that.

Thread Thread
johndemian profile image
John Demian

I hear you! And while I miss having the observability I got with a traditional server, with serverless there are some benefits I just can't deny. Things like cost-effectiveness, scaling and the fact that it lets me - a front-end developer - worry about the business logic and the user experience rather than mucking about with the backend.

To each it's own, I guess :)