Part 1. The cloud-native context

 

Although it may sound cliché, this first part of the book really sets the stage. I suppose I could have jumped right into the patterns that I’m sure you’re eager to learn about (service discovery, circuit breakers, and more), but I want you to understand these patterns at such a deep level that these first chapters are essential. Understanding the context in which your apps will run, the infrastructure as well as the more human elements, will allow you to apply the patterns in the most effective way. Your customers’ expectations of your digital offerings (constant evolution and zero downtime) and the way you and your colleagues deliver those offerings (empowered teams and no tickets) have relationships to the design patterns that you might not expect.

One of the main things I do in the first chapter is define cloud-native, differentiating it from cloud (spoiler alert: the latter is about where, whereas the former is about how and is the really interesting part). I also establish a mental model around which part 2 of the book is organized.

The second chapter is all about operating cloud-native apps. I can hear some of you thinking “I’m dev—I don’t need to worry about that,” but please suspend your disbelief for a moment. The operational practices that deliver on some of your customers’ demands immediately translate to requirements on your software.