Choreography and orchestration of microservices workflow (achitecture)
Introduction
Workflow automation, mainly in the context of microservices and Java development (eg: with Spring Boot framework).
Bibliography
[1] The Microservices Workflow Automation Cheat Sheet
It covers choreograply and orchestration, communication, workflow engine and workflow model:
https://blog.bernd-ruecker.com/the-microservice-workflow-automation-cheat-sheet-fc0a80dc25aa
Samples available in GitHub, using Camunda BPM, Zeebe, Java, Spring Boot or Apache Kafka among other:
https://github.com/berndruecker/flowing-retail
[2] Event-Driven Orchestration: Effective Microservices Integration Using BPMN and AMQP
It proposes an event-driven centralized service orchestration using BPMN workflow and an AMQP event bus as message broker to decouple the services:
https://dzone.com/articles/event-driven-orchestration-an-effective-microservi
Sample available in GitHub, using Spring Boot, Camunda BPMN and Rabbit MQ
https://github.com/colinlucs/microservices-orchestration-amqp-example.git
[3] Amazon AWS SQS as messaging queue
Using Amazon SQS with Spring Boot and Spring JMS > https://aws.amazon.com/blogs/developer/using-amazon-sqs-with-spring-boot-and-spring-jms/
AWS SQS as Messaging Queue In Spring Boot > https://arupmishra91.medium.com/aws-sqs-as-messaging-queue-in-spring-boot-58c60b9d2fbf
Frameworks and tools
Flowable > https://en.wikipedia.org/wiki/Flowable
Flowable is an open-source workflow engine written in Java that can execute business processes described in BPMN 2.0. It is an actively maintained fork of Activiti
Activiti > https://en.wikipedia.org/wiki/Activiti_(software)
Spring Statemachine > https://projects.spring.io/spring-statemachine/