Monday, March 16, 2015

Single threaded (Synchronous) JMS message processing from Distributed Queue in WebLogic Clustered Environment.

In WebLogic SOA multi-node cluster environment we technically have multiple instances of JMS consumers running.

When there is a requirement to process all the messages in sequence from distributed Queue in clustered environment infrastructure, we may run in to issues where message are not processed in order they come in and synchronously.  

Bellow you would see one way to solve this issue.

WebLogic’s Unit-Of-Order feature from JMS provides the capability of processing particular stream of messages in Order based on Unit-Of Order key. Every message in that stream will be processed in order and synchronously using single thread.

If you set JMS_BEA_UnitOfOrder property to same key for all the messages published in distributed Queue in clustered environment, this will create one UOO stream on distributed destination and all the message from that stream will be processed in order and by single thread.


You can set Unit Of Order property to all publishing message globally in JCA JMS adapter configuration wizard.


No comments: