the last thing you want to do is set up infrastructure.

What readers are saying

Tushar Sharma

Daniel Ong

Curtis Ekstrom

Randy Lough

I'm a Front-end Developer and I'm starting my learning journey about serverless architectures.
I've searched for many books and resources online about serverless but I ended up reading and loving your book Going Serverless.
Thanks for writing such a great book (Read the sample!) Have a nice day!

Tushar Sharma

Just wanted to drop you an email to thank you for doing the Serverless Go book. I have actually been looking to learn this area, bought your book, and will be going over it this weekend.
Keep writing and shipping!

Daniel Ong

I stumbled across your blog because I was curious about doing auth in a serverless environment.
It was so well-written that when I stumbled across your Going Serverless book, I had to buy it :)

Curtis Ekstrom

I just wanted to say thank you for your awesome article on Serverless Go.
I’ve been struggling so much on that topic, but your article and code made it so clear on how to accomplish it.
Look forward to reading more of your stuff (I bookmarked your site!)

Randy Lough

What you will learn

How to build software without thinking about infrastructure

Serverless architectures

Building applications with the Serverless framework and AWS Lambda

Serverless design patterns

Securing your functions

Orchestrating complex workflows

Error Handling

Monitoring

Serverless architectures replaces long-running virtual machines with ephemeral compute power that comes into existence on request and disappears immediately after use.

With scalability and high availability baked in as well as a pay-what-you-use pricing model, serverless is taking software by storm!

The Serverless framework is a toolkit for deploying and operating serverless applications. Focus on code, not infrastructure!

Learn how you can get started building scalable applications with the Serverless framework and AWS Lambda through a total of 8 hands-on chapters.

In serverless architectures, tasks tend to be asynchronous, stateless, and ephemeral.

Simple but usable primitives and the ubiquity of events leads to the adoption of new, serverless design patterns.

Learn how you can make use of the strengths of serverless by applying event-driven data processing, fanout, serverless web applications, and complex workflows with distributed sagas.

Authentication determines a client's identity - is the user who they claim to be?
Clients present a set of credentials, which may be valid or invalid.
Typically, a user verifies their identity with their username and password.

Authorization determines what a client is allowed to do.
Clients may have presented valid authentication credentials, but they might not have sufficient privileges to perform an action.
Each user has a different set of permissions, which limits what they can and cannot do.

Learn how you can secure your serverless functions with JSON Web Tokens and AWS Custom Authorizers.

In addition, learn how to manage application secrets with AWS Key Management Service.

In distributed systems, business transactions spanning multiple services require a mechanism to ensure data consistency across services.
Building applications from individual components that each perform a discrete function lets you scale and change applications quickly.

However, it becomes a challenge when you to coordinate multiple components to accomplish a single task.

Learn how you can orchestrate complex workflows with the distributed saga pattern and AWS Step Functions.

Delegating the task of managing infrastructure and provisioning compute capacity to capable hands means that your infrastructure is less likely to fail.

However, this does not completely eliminate the possiblity of errors in your application's business logic.

Learn how you can detect, store, and take action on errors within your serverless functions using dead letter queues.

Unlike traditional applications, in serverless you can't ssh into an instance to debug an issue. The execution environment is outside your control.

Thus, having visibility over the health of your functions is paramount in serverless architectures.

Learn how you can keep track of function metrics and create alarms that notify you when something's wrong.

96%readers satisfied on LeanPub

11guided chapters

228pages

8code samples

Chapters

Click for more details.

Chapter 1

Introduction to Serverless

Introduction to Serverless

How serverless came to be and how it compares to traditional compute provisioning. The basic building blocks of Functions-as-a-Service, benefits, drawbacks, and use cases.

Chapter 2

The Serverless framework

The Serverless framework

Learn the Serverless framework: Events, Functions, and Resources. Learn how to set up your AWS account and development environment.

Chapter 3

Building your first application

Building your first application

You'll build a simple serverless application using the Serverless framework.
Learn how to develop, deploy, test, and monitor your Functions.

Chapter 4

Building an event-driven pipeline

Building an event-driven image processing pipeline

Learn how to apply the event-driven data processing serverless design pattern by building an image processing pipeline.

Chapter 5

Building a scalable web scraper

Building a scalable web scraper

Learn how to apply the fanout pattern to utilize instant burst compute capacity when you need it, by building a web scraping service.

Chapter 6

Building a full-stack serverless application

Building a full-stack serverless application

Learn how to build both backend and frontend components using serverless technologies.

Chapter 7

Securing your functions

Securing your functions

Learn how to add authentication and authorization to your Functions using JWTs and AWS Custom Authorizers.
Encrypt your secrets with AWS KMS.

Chapter 8

Orchestrating workflows

Orchestrating workflows

Learn how to design and execute complex, multi-step workflows using AWS Step Functions.

Chapter 9

Error Handling

Error Handling

Learn how to detect and catch critical errors in your serverless applications via dead letter queues and take further action.

Chapter 10

Monitoring

Monitoring

Track the health of your functions using CloudWatch metrics and receive real-time notifications with CloudWatch alarms.

Chapter 11

Where to go from here

Where to go from here

Some additional resources for you to continue your serverless journey.

The full Package

what you get with your purchase

content #1

Deployable Serverless Applications

$89.99free

Get an image processing pipeline, a scalable web scraper, and a full-stack application (both backend and frontend) built using serverless technologies.

But wait, there's more!TM You'll also get working samples of authorization, error handling, monitoring, and orchestrating workflows with distributed sagas.

content #2

Book Chapters in Multiple Formats

$29.99free

Read the book on multiple platforms! On your phone! On a tablet! You will receive a copy of the book in PDF, ePub, mobi, and online-ready HTML formats so you can read on your phone, tablet, or laptop.

Frequently asked questions

What is this serverless thing you're talking about?

Serverless is a software development approach that allows developers to build scalable applications without worrying about the nitty gritty details of infrastructure (e.g. load balancing, server provisioning, etc.)
Deploy your code to a Functions-as-a-Service (FaaS) platform, and it scales automagically based on actual usage.
Make use of external services wherever possible so you can focus on doing the things only you can do.

Who should read this book?

This book is aimed at developers with a basic understanding of the web, HTTP, and server-side technologies. You also need working knowledge of JavaScript, Node, and NPM. You don't need any prior background in AWS nor in serverless architectures.
The Going Serverless book walks you step-by-step from setup to development to production.

Is there source code available?

Yes! You will gain access to a total of eight working code samples when you buy the book. Just hit deploy!

What programming language are we using?

Javascript (ES2015.)

Which FaaS provider are we using?

AWS Lambda, from Amazon Web Services.

What about vendor lock-in?

The major cloud vendors are here to stay. In addition, the Serverless framework is platform agnostic. That makes switching easier for when you need to move away from a FaaS provider to another.

What use cases does the book cover?

There are a total of 8 hands-on chapters. Over the course of the book, you will build an event-driven image processing pipeline, a scalable web scraping service, a full-stack serverless application using serverless technologies, and more.

Can Serverless used to build a whole web application?

Yes. Serverless has already been used by teams all over the world to build full backends for web applications.
There's a common misunderstanding that a Serverless function's maximum execution time makes it unsuitable for many applications.
In reality, 99% of web application operations finishes in less than 5 minutes (the max invocation time for an AWS Lambda function.)
If you need more execution time, you can split the work to several lambda functions in parallel or use AWS Step Functions to manage long-running workflows that can last up to a year.

Is it true that using Serverless is cheap?

The primary cost savings from Serverless is from the fact that you don't pay for idle compute time. In addition, you also save on time you would have spent on operating a high available and scalable infrastructure, as well as the initial architecture setup. Cost savings will largely depend on your use case and traffic usage patterns.

Is the book available in ePub or mobi formats?

Yes! The book is available in PDF, ePub, mobi, and HTML formats. Anyone who purchases the book will have access to all formats.

Is it any good?

Yes.

I have a question! I have a suggestion!

All feedback are welcome! You can send in your questions, comments, issues, and suggestions here.