I am designing a service that will be receiving requests which must only be executed exactly once (can be received more than once due to unique id presence).
The flow is:
outside world -> HTTP -> [A set of instance of Myservice] -> HTTP -> Vendor services
So, I am receiving a bunch of requests over HTTP and I am looking to do some transformation, checking, store the request in a database and send to to the vendor services via HTTP too.
My question is:
What is an effective way to achieve a store and forward pattern in my service ie receive the request and store it immediately, therefore acking it to the "outside world" immediately and then in my own time forward it to the destination service, retrying as many times as needed?
Problems:
I would advise against NIH syndrom and take a dependency on a mature technology that delivers all your reliability requirements out of the box.
Cadence Workflow is capable of supporting your use case with minimal effort.
Cadence offers a lot of features that are hard to match building custom task orchestration solution:
See the presentation that goes over Cadence programming model.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.