jeudi 10 août 2023

Orchestration Service vs Choreography Service vs Workflow [closed]

I need to implement a business process that performs 4 steps e.g.

  1. An event calls Service A
  2. Use the response of Service A to Call Service B
  3. Use the response of Service B to Call Service C
  4. Use the response of Service c to Call Service D

I have implemented the above using a central Orchestration microservice in the past. Where the Orchestration Springboot microservice holds the logic and manages the E2E business process (steps 1-4).

My questions:

  1. When is the use of an orchestrator service good practice i.e. a central microservice communicating to external services and passing the output of one service as input to the next dependent service?
  2. If one or more of steps 1-4 is a messaging interaction based on pub/sub or standard queue, what will be the best approach to implement the business process 1-4?
  3. If steps 1-4 is all synchronous service call, could I still use choreography with service communication based on events pub/sub and queues?
  4. When is a workflow tool like Airflow suitable for this kind of multi-microservice interaction to realize a business process?

Aucun commentaire:

Enregistrer un commentaire