Home server queues

Home server queues pull messages from store and forward queues. The S&F queue may be a 'pushing' S&F queue (that is, has a valid connection definition). Home server queues only pull messages across a single 'hop', (that is, from a remote queue manager with which it is directly connected) and only pull messages whose intended destination is the local queue manager - the queue manager upon which the home server queue resides. A typical Home Server Queue configuration is illustrated below:

Figure 1. A home server queue configuration

The diagram shows a simple HomeServerQueue setup. In this configuration the server queue manager has no connection definition to the client; instead it has a store queue (that is, a store and forward queue with no target queue manager) that collects all messages bound for the client. This message collection embraces all queue destinations on the client.

The client pulls the messages from the store queue using a home server queue pointing at the store queue on the client. The home server queue never stores messages itself, it collects them from the store queue and delivers them to their destinations on the client. The client makes the connection request to the server using its connection definition.

The home server queue 'homeServerQueue@RemoteQM' attempts to pull messages from the queue manager 'RemoteQM'. It requires a connection definition to be able to do this. The home server queue is able to pull messages only if there is a store and forward queue that is storing messages for LocalQM.

Messages that are pulled from RemoteQM are then 'pushed' to local queues on LocalQM. This is shown in the following diagram, where a Home Server Queue on LocalQM is pulling messages (for LocalQM) from RemoteQM. In this case a message for TargetQueue@LocalQM is shown being pulled, and the resolution at the queue manager has been hidden for clarity. In reality, the Home Server Queue presents each pulled message to the local queue manager for resolution, as shown in the following diagram:

Figure 2. A home server queue pulling messages

The pull message route can be viewed at a more abstract level, as shown in the following diagram:

Figure 3. An abstract pull message route

How are pulled message routes useful, and where would you use them? The most important feature of a pulled message route is that the flow of messages is under the control of the local queue manager. This makes it very useful to a client that spends much of its time disconnected. If you had to rely on the server pushing message, the server would need to continuously poll the client to check if it was available. This would not be a good solution for large numbers of clients, as much of the servers time would be spent polling for disconnected clients.

Instead, with a Home Server queue, each client pulls messages when it is connected, and the server only has to deal with real requests from connected clients. One concrete example of this is the administration of queue managers that do not have listener capability. Administration messages for the client are placed upon a Store and Forward queue. The client can then use a Home Server queue to pull these when it is connected. Administration reply messages could then be pushed using normal push remote queue, as shown in the following diagram:

Figure 4. Administering queue managers that do not have listener capability


Terms of use | WebSphere software

(c) Copyright IBM Corporation 2004, 2005. All rights reserved.