I am working on a few different usage patterns for how “Status Updates” come in from a external system as a message.
The two main patterns that I have been exploring is:
single process that has a “event loop” that captures a generic message from the external system, parses the message and generates a “Status Update”.
A overall process that manages the main flow, but a second stand-alone process that have a message start event that catches the message and processes.
The main difference in my mind is: "whether to have a single process with the “event loop” or have the “stand-alone” processes.
Would love community’s thoughts and opinions.
here is a example of the Event Loop scenario:
Ignore the semi-improper use of the lanes Mainly being used at this point for framing the conversation.
edit: also note in the event loop example, the Event Gateway is used to help keep the diagram a little more clean and easier to read + a variation on this pattern is to have different Catch message events rather than the single Catch and the Exclusive Gateway.
Edit: My initial thoughts for the Event Loop pattern is that is could create a scenario where System 2 sends the message but the process is not waiting to catch it? @camunda can you provide any info about how the “queue” of messages works? If a process looks to catch the message after the message was already sent from System 2, will the process still catch the message? (aka: System 2 generates Message before Process reaches Catch event).