Book Description
Serverless applications and architectures are gaining momentum and are increasingly being used by companies of all sizes. For good reason, serverless-based applications handle many of the problems developers face when running systems and servers such as fault-tolerance, centralized logging, horizontal scalability, and deployments, to name a few. Additionally, the serverless pay-per-invocation model can result in drastic cost savings. While it’s simple to create a basic serverless application, it’s critical to design and structure your software correctly to ensure its success as it grows in complexity.
As you start a new serverless project you will immediately be faced with the question, “How should I design my code for a serverless system?” The good news is that tried and true patterns are evolving to fit in the serverless landscape, taking advantage of all that serverless systems have to offer and avoiding some of its pitfalls. This book presents several familiar patterns which will be adapted to run in a serverless environment. Your path through this book will take you across multiple serverless patterns applicable to web applications, data processing, big data, mobile, and Internet-of-Things to name a few. Additionally, you will learn which patterns fit specific types of problems and how to ensure your application is scalable, performant, fault tolerant and well tested.