Book Image

Cloud Native Development Patterns and Best Practices

By : John Gilbert
Book Image

Cloud Native Development Patterns and Best Practices

By: John Gilbert

Overview of this book

Build systems that leverage the benefits of the cloud and applications faster than ever before with cloud-native development. This book focuses on architectural patterns for building highly scalable cloud-native systems. You will learn how the combination of cloud, reactive principles, devops, and automation enable teams to continuously deliver innovation with confidence. Begin by learning the core concepts that make these systems unique. You will explore foundational patterns that turn your database inside out to achieve massive scalability with cloud-native databases. You will also learn how to continuously deliver production code with confidence by shifting deployment and testing all the way to the left and implementing continuous observability in production. There's more—you will also learn how to strangle your monolith and design an evolving cloud-native system. By the end of the book, you will have the ability to create modern cloud-native systems.
Table of Contents (12 chapters)

Example – end-to-end relay

Let's pull this all together with an end-to-end example of a typical ordering process of an e-commerce system. At the highest level, the system receives an order, forwards the order to a third-party order-management system, and receives order status updates. The system is built using our cloud-native patterns.

We have a frontend (FE) application that submits orders to its BFF component. The BFF component emits the order-submitted event type and consumes the order-received and order-fulfilled event types to track the order status. These two pieces are owned by the same team. Another team owns the external service gateway (ESG) component that encapsulates the interactions with the third-party order management system. This component consumes the fulfill-order event type and emits fulfill-order-received and fulfill-order-complete event types...