1 Going serverless


This chapter covers

  • Traditional system and application architectures
  • Key characteristics and benefits of serverless architectures
  • How serverless architectures and microservices fit into the picture
  • Considerations when transitioning from server to serverless
  • What’s new in this second edition?

If you ask software developers what software architecture is you might get answers ranging from “it’s a blueprint or a plan” to “a conceptual model” to “the big picture.” This book is about an emerging architectural approach that has been adopted by developers and companies around the world to build their modern applications—serverless architectures.

Serverless architectures have been described as somewhat of a “nirvana” for an application architectural approach. It promises developers the ability to iterate as fast as possible while maintaining business critical latency, availability, security, and performance guarantees, with minimal effort on the developers’ part.

This book teaches you how to think about serverless systems that can scale and handle demanding computational requirements without having to provision or manage a single server. Importantly, this book describes techniques that can help developers quickly deliver products to market while maintaining a high level of quality and performance by using services and architectures offered by today’s cloud platforms.

1.1 What’s in a name?

1.2 Understanding serverless architectures

1.2.1 Service-oriented architecture and microservices

1.2.2 Implementing architecture the conventional way

1.2.3 Implementing architecture the serverless way

1.3 Making the call to go serverless

1.4 Serverless pros and cons

1.5 What’s new in this second edition?