The main features of applications that use message queuing techniques are:
Programs can get messages that were put on a queue by other programs. The other programs can be connected to the same queue manager as the receiving program, or to another queue manager. This other queue manager might be on another system, a different computer system, or even within a different business or enterprise.
There are no physical connections between programs that communicate using message queues. A program sends messages to a queue owned by a queue manager, and another program retrieves messages from the queue (see Figure 1).
Figure 1. Message queuing compared with traditional communication
As with electronic mail, the individual messages that may be part of a transaction travel through a network on a store-and-forward basis. If a link between nodes fails, the message is kept until the link is restored, or the operator or program redirects the message.
The mechanism by which a message moves from queue to queue is hidden from the programs. Therefore the programs are simpler.
Programs can get messages from a queue either in the order in which the messages appear in the queue, or by getting a specific message. (A program may want to get a specific message if it is looking for the reply to a request it sent earlier.)
A server application will not have to be changed to be able to support additional WebSphere MQ clients on new platforms.
Similarly, the WebSphere MQ client will, without change, be able to function with additional types of server. See WebSphere MQ Clients for more information.