One of our systems needs to be driven by messages in WebSphere MQ. (We are not using MSMQ or MSMQ binding for WCF - we need to integrate with legacy systems). It is probably going to be a Windows Service reading messages from a queue and then performing
DB updates/sending other messages.
How do the responsibilities of the layers change to accommodate this requirement? Are additional layers needed / are there unnecessary layers? There probably has to be a main loop that reads the messages from the queue - where does this functionality belong?
What about transactions in this scenario? In the future we probably want to coordinate MQ and database transactions. The current structure suggests that the transaction management happens in the Application Layer - is this still the case with MQ-driven applications?
Are there any examples/code out there for this type of implementation? Any specific documentation I should look at?