MQ Objects
MQ Installations
MQ Distribution Setup
MQ Triggering
MQ Failure Messages
MQ Client-Server
MQI Calls
MQ Logs
MQ Clusters
MQ Object Properties
Websphere MQ Interview Questions



Distribution Setup Internal Functionality in MQ

How does the distribution (point to point) setup works?

The application has to put a message into a remote queue in coordination with the queue manager. 

While application putting the messages, it contains MQMD header and Message data (application payload) in it.




The messages placed in the remote queue will move to the corresponding transmission queue. The messages in the transmission queue will have transmission header in it.

This XQH (transmission header) generated by queue manager from the remote queue property details.


 XQH (transmission header)


MCA (Message Channel Agent) is a program which is associated with channels by default. It has got the channel functional logic.

Once the message is available in the transmission queue, sender side MCA will pick it up and sends it across a channel to the receiver end.


MCA (Message Channel Agent)



We haven’t created any MCA through commands because MCA is associated with the channel. If a channel is running MCA is running and MCA is stopped if the channel is stopped.


We can check the MCA status using

Display Chs(Channel Name) MCAStatus


Receiver end,

Messages reach over the receiver channel to receiver end of the queue manager.

There, Receiver side MCA (Message Channel Agent) will pick up the incoming messages and based on the XQH (transmission header) messages will be placed in corresponding queues.


Receiver MCA will remove the transmission header and puts only MQMD &Msg data into the destination queue.


Receiver end


From the Destination Queue, receiver end applications will consume the messages.

 Destination Queue


This is how messages placed at one end of queue manager are moved to another end of queue manager queues.


Now where did the listener go? What is listener’s functionality in the entire setup?

The listener is not used for consuming the messages from the channel. This is a misunderstanding, that most of the people think of listener do.

When a sender channel initiates a network request for channel start, the listener will pick it up at the receiver end and starts the corresponding receiver channel.

That’s how receiver comes automatically to running state. We don’t have to start it manually.


Topics Summary