Running Serverless: Introduction to AWS Lambda and the Serverless Application Model
ISBN: 9780993088155 (paperback), 9780993088162 (epub)
Book by Gojko Adzic
Latest update 15 January 2020: using AWS Lambda Runtime for Nodejs 12.x and SAM 0.40.0.
Get the book
- Paperback (print) version is available from Amazon (US, UK, DE, FR, CA, AU), Barnes and Noble and other major book stores.
- PDF, ePub or Kindle are available from from LeanPub.
- Kindle versions are also available on the Kindle store (US, UK, DE, FR, NL, CA, AU).
- ePub is also available from Apple Books (iBook) and Smashwords.
- Nook version is available from Barnes and Noble.
- Kobo version is available from the Kobo store.
Read a sample to get a taste of the content.
Take the interactive workshop
This book is also available as an interactive workshop at Educative.io
Updates
Sign up to get notified about related updates.
Source code
JavaScript source code is available from the following link:
code/20200123-javascript.zipPython source code, contributed by Thomas Braam, is available from his GitHub repository:
twbraam/running-serverless-pythonI am still working on publishing the code for other programming languages. Please come back in a few days, or Sign up to get notified when we publish rest of the materials on this site.
About the book
This book will help you get started with AWS Lambda and the Serverless Application Model (SAM). Lambda is Amazon's engine for running event-driven functions, and SAM is an open-source toolkit that greatly simplifies configuring and deploying Lambda services. Together, they make it easy to create auto-scaling APIs and cloud services designed for serverless deployments.
Running Serverless is a technical tutorial. It will be useful for two groups of developers and architects:
- People who have no previous experience working with serverless applications and are interested in learning about emerging cloud architectural patterns
- People who already work with Lambda using other deployment frameworks and want to learn about AWS SAM, the Serverless Application Model
You'll learn how to:
- Design applications that get the most out of serverless architecture
- Create auto-scaling web APIs
- Handle background tasks and messaging workflows
- Set up a deployment pipeline for effective team collaboration
- Test and troubleshoot code designed for AWS Lambda
- Inspect and monitor serverless applications
The contents of this book are based on my experiences with MindMup, a collaborative mind-mapping system that was one of the early adopters of AWS Lambda. MindMup moved to a serverless model from an application hosting service throughout 2016, in order to benefit from on-demand scaling. We reduced operational costs by about two-thirds while significantly increasing application capacity, speeding up development and reducing time to market for new features. The lessons from our migration ended up in one of the first scientific papers on the topic, and I was invited to present our experiences at conferences all over the world.
This book is structured as a walk-through for building a practical application. We start from a simple static API and gradually grow it into an online image-resizing service, ready for millions of users, with all the supporting operational and infrastructural capabilities. The application closely resembles real-world systems that many of you will develop in your jobs. This will give you a good structure for your own work, and you will be able to almost copy parts to get a head start. As you discover how to create and deploy different parts of the application, you will also learn about key aspects of Lambda and related services, important tips, techniques and tools for running serverless.
About the author
Gojko Adzic is a partner at Neuri Consulting LLP. He one of the 2019 AWS Serverless Heroes. Gojko's book Specification by Example won the Jolt Award for the best book of 2012. Gojko is one of the authors of MindMup and Narakeet.