The Story of the Orchestra Conductor: Orchestration-Based Saga with Microservice

[tr] Türkçe Oku

2023-06-11

In another corner of the Land of Computers, in the City of Microservices, there was another world where all microservices moved according to a specific symphony. In this world, all microservices were governed by a single orchestra conductor, and this management model was called “Orchestration-Based Saga.”

This resembled a music performance in a grand orchestra. Just as an orchestra conductor tells all musicians when and which notes to play, in this world, the Orchestra Conductor Microservice determined when and how all microservices would move. All microservices followed the instructions of the Orchestra Conductor Microservice, thereby completing complex tasks.

One day, a Shopping Microservice wanted to initiate an order creation process. This process required the collaboration of the Product Selection Microservice, Payment Microservice, Order Confirmation Microservice, and Shipping Microservice. However, these microservices did not act independently like individual musicians. They moved according to the instructions of the Orchestra Conductor Microservice.

First, the Orchestra Conductor Microservice instructed the Product Selection Microservice to initiate the product selection process. The Product Selection Microservice received this instruction and completed its task. Then, the Orchestra Conductor Microservice instructed the Payment Microservice to initiate the payment process. The Payment Microservice received this instruction, completed the payment, and reported the status back to the Orchestra Conductor Microservice.

Next, the Orchestra Conductor Microservice instructed the Order Confirmation Microservice to confirm the order. The Order Confirmation Microservice approved the order and reported the status back to the Orchestra Conductor Microservice. Finally, the Orchestra Conductor Microservice instructed the Shipping Microservice to initiate the shipping process, and the Shipping Microservice completed this task as well.

This process advanced harmoniously and orderly, similar to an orchestra. The Orchestra Conductor Microservice determined when and how all microservices would move, effectively managing a complex task. This is a part of the enchanting world of Orchestration-Based Saga.

And this tale comes to an end here. However, remember that in the City of Microservices, there is always a new story, a new adventure, and a new orchestra performance waiting. Because Orchestration-Based Saga always continues… Always tells a new story… Always initiates a new symphony… And this is a part of the magical world of the Land of Computers.



More posts like this

Reliable Communication Between Microservices: An In-Depth Look at the Transactional Outbox Pattern

2023-06-28 | #microservice #transactional-outbox-pattern

1. Introduction: Definition and Use Cases of the Transactional Outbox Pattern The Transactional Outbox Pattern is a design model that enables reliable communication between microservices. This model allows a microservice to perform database operations and send messages outwards within the same transaction. As a result, either both operations succeed or both fail, ensuring data consistency. The key components of this model are an “Outbox” table and a “Publisher” service. When a transaction occurs, the microservice first performs a transaction in the database and then writes a message to the Outbox table within the same transaction.

Continue reading 


The Story of the Orchestra Conductor: A Saga of Orchestration with Microservices

2023-06-11 | #choreography-based-saga #microservice #saga-pattern

In another corner of the Land of Computers, in the City of Microservices, there was another world where all microservices moved according to a specific symphony. In this world, all microservices were managed by a single orchestra conductor, and this management model was called “Orchestration-Based Saga.” It was akin to a music performance in a grand orchestra. Just as an orchestra conductor tells all musicians when to play which notes, here the Orchestra Conductor Microservice determined when and how all microservices would move.

Continue reading 