How to build solid, resilient and durable workflows with microservices?
?Let's tackle a bit more real process implemented in #dapr and #camunda. Let's consider a use case from insurance business: "As an insurance company I offer my customers credit protection insurance for their mortgage". In this demo we focus only on first part - validation and processing of the request. The following picture shows the #BPMN process.
Let’s expose a simple user friendly customer web site and also some REST endpoints (Customer Experience API) so that partners can plug it directly with their systems. Microservice running on the API will trigger process on Camunda zeebe engine. There are 3 microservices: Subscription Service, Customer Service and Underwriting Service. One has no dependency on another and even they are not aware of the full process (context). They are implemented with #DDD, have their own logic (and can only reach valid states). It's up to someone else to orchestrate and here #Camunda does the job very well.
The full project is on RobertVejvoda/subscription-processing-demo (github.com).
Thank you for sharing, Robert!
SW Developer, SW Architect, DevOps
8 个月What a beauty of a diagram :)