The hands-on lab is part of these learning pathsSee 2 more
Ready for the real environment experience?
AWS Lambda is a compute service that runs your code in response to events and automatically manages the compute resources for you, making it easy to build applications that respond quickly to new information. Lambda opens up all kinds of new possibilities and can lower your costs at the same time. When running a job-processing server in EC2, you are charged for compute time as long as your instance is still running. Contrast that with Lambda where you are only charged while actually processing a job. This makes Lambda a great fit for spiky or infrequent workloads because it scales automatically and minimizes costs during slow periods. The event-based model Lambda provides makes it perfect for providing a backend for mobile clients, other smart devices, or adding no-stress asynchronous processing to an existing application.
In this introductory Lab, you will learn how to use AWS Lambda to easily run code to react to events. Events can come from DynamoDB changes, SNS messages, S3 objects, Kinesis streams, or a variety of other sources. Owing to its versatility, Lambda has found use in mobile apps, Internet of Things backends, and big data systems.
Upon completion of this Lab, you will be able to:
- Understand what Lambda functions are and what makes them unique
- Create Lambda functions using the AWS Console
- Test Lambda functions
- Delete Lambda functions
You should be familiar with:
- Node.js development experience is beneficial, but not required
Before completing the Lab instructions, the environment will look as follows:
After completing the Lab instructions, the environment should look similar to:
June 25, 2018 - Complete update (easier to follow instructions, updated screenshots)
About the Author
Ryan and his faithful business partner Jade build tools for OpenStack and AWS to automate support of high-availability applications. Offline, he can be found buried in human factors books looking for ways to build more resilient systems.
Ryan loves working with large systems, the less predictable the better. Scaling, load balancing, and graceful failure handling are his favorite classes of problems.
His free time quickly fills with personal projects and self directed research on new tools or different areas of software development.