The message driven channel adapter picks message from websphere MQ and it is configured with DefaultMessageListenercontainer. Outbound channel adapter sends the message to websphere MQ and have configured JMS template for that.
The problem is, performance looks very low. I have used cache_consumer and acknowledge="transacted at message-driven-channel-adapter. I dont feel message-driven-channel-adapter would be an issue. I feel performance issue is due to jmstemplate used in outbound-channel-adapter, because everytime it creates a producer from the session provided downstream from message-driven-channel-adapter.
Is there a way to cache the producer used by jmstemplate.Can anyone please tell me as how i could improve the performance?
Are you using a CachingConnectionFactory? If not you should. Also another time I have seen this sort of things is when the number of threads exceed the number of available connections in the pool for the database. In this case things actually bottleneck waiting for a connection from the pool. You can also profile that aspect of your application to rule it out.