Reputation: 665
I'd like to understand what is the implementation of the JMS drivers for WebSphere MQ. I'm not interested in the JMS sync/async methods directly but rather in their implementation.
If an application is deployed on a J2EE server and performs asynchronous calls (by implementing onMessage()), does the J2EE server still pull to check for the availability of a message or does MQ actively call back the client (J2EE server) through the opened socket to notify the presence of the message?
Upvotes: 1
Views: 2041
Reputation: 7525
It depends on what version of IBM MQ you are using.
Prior to MQ V7, the JMS layer would poll the queue manager for a message - essentially pull.
After MQ V7, the queue manager natively understands and implements asynchronous get where it will notify the getter of a message so it no longer has to poll.
Further Reading
Upvotes: 3