I have 2 instances of my application (2 different machines) configured to listen on a single IBM MQ queue, each of them configured with 4 concurrent consumers in the cxf bean.
<bean id="TestConfig0" class="org.apache.cxf.transport.jms.JMSConfiguration"
p:sessionTransacted="false" p:connectionFactory-ref="jmsConnectionFactory0" p:concurrentConsumers="4"
p:targetDestination="TestQueue" p:deliveryMode="1"/>
When I run my application to read the data from the above queue. I see that 70% of the messages are picked up by server1 and only 30% by server2.
All the configurations are equal among both the app instances with respect to the JMS configuration.
Its bit strange to observe this pattern. How do i ensure that both my app instance pick the messages from the Queues evenly ??