Book Image

Implementing Azure: Putting Modern DevOps to Use

By : Florian Klaffenbach, Oliver Michalski, Markus Klein, Mohamed Waly, Namit Tanasseri, Rahul Rai
Book Image

Implementing Azure: Putting Modern DevOps to Use

By: Florian Klaffenbach, Oliver Michalski, Markus Klein, Mohamed Waly, Namit Tanasseri, Rahul Rai

Overview of this book

This Learning Path helps you understand microservices architecture and leverage various services of Microsoft Azure Service Fabric to build, deploy, and maintain highly scalable enterprise-grade applications. You will learn to select an appropriate Azure backend structure for your solutions and work with its toolkit and managed apps to share your solutions with its service catalog. As you progress through the Learning Path, you will study Azure Cloud Services, Azure-managed Kubernetes, and Azure Container Services deployment techniques. To apply all that you’ve understood, you will build an end-to-end Azure system in scalable, decoupled tiers for an industrial bakery with three business domains. Toward the end of this Learning Path, you will build another scalable architecture using Azure Service Bus topics to send orders between decoupled business domains with scalable worker roles processing these orders. By the end of this Learning Path, you will be comfortable in using development, deployment, and maintenance processes to build robust cloud solutions on Azure. This Learning Path includes content from the following Packt products: • Learn Microsoft Azure by Mohamed Wali • Implementing Azure Solutions - Second Edition by Florian Klaffenbach, Oliver Michalski, Markus Klein • Microservices with Azure by Namit Tanasseri and Rahul Rai
Table of Contents (29 chapters)
Title Page
Copyright and Credits
About Packt
Contributors
Preface
Index

Sagas


 

Problem

In a distributed system, messages sent by the services might not be controlled. As the system grows and more services are added, the system starts becoming unmaintainable. In a large distributed system, it becomes hard to track which message goes where.

Sagas (Problem)

Another problem that Microservices-based system encounters is that there is no single source of truth that can be used by all the services. For instance, in an e-commerce application, when a customer places an order a message containing order details is sent to the procurement service. Once the order service responds, another message containing delivery details is sent to the delivery service. This leads to there being no single source of truth that contains the entire customer order data.

Solution

Using sagas, workflows can be implemented in a Microservice application. Sagas are state machines that model a workflow with steps to be executed. Sagas treat the various Microservices as implementations of workflow.

In...