Tuesday, June 11, 2013

MQ queue naming standards




The naming of the WebSphere MQ queues is an important part of Q replication setup. It may be that your site already has a naming standard for MQ queues, but if it does not, then here are some thoughts on the subject.

Queues are related to Q Capture and Q Apply programs, so it would be useful to have that fact reflected in the name of the queues.


 A Q Capture needs a local Restart Queue and we use the name CAPA.RESTARTQ.
 Each Queue Manager can have a Dead Letter Queue. We use the prefix DEAD.LETTER.QUEUE with a suffix of the Queue Manager name giving DEAD.LETTER.QUEUE.QMA.
  
Receive Queues are related to Send Queues.
 For every Send Queue, we need a Receive Queue. Our Send Queue names are made up of where they are coming from, Q Capture on QMA (CAPA), and where they are going to, Q Apply on QMB (APPB), and we also want to put in that it is a Send Queue and that it is a remote definition, so we end up with CAPA.TO.APPB.SENDQ.REMOTE. The corresponding Receive Queue will be called CAPA.TO.APPB.RECVQ.

 Transmission Queues should reflect the names of the "to" Queue Manager.
 Our Transmission Queue on QMA is called QMB.XMITQ, reflecting the Queue Manager that it is going to, and that it is a Transmission Queue. Using this naming convention on QMB, the Transmission Queue is called QMA.XMITQ.

    Channels should reflect the names of the "from" and "to" Queue Managers.
    Our Sender Channel definition on QMA is QMA.TO.QMB reflecting that it is a channel from QMA to QMB and the Receiver Channel on QMB is also called QMA.TO.QMB. The Receiver Queue on QMA is called QMB.TO.QMA for a Sender Channel of the same name on QMB.

    A Replication Queue Map definition requires a local Send Queue, and a remote Receive Queue and a remote Administration Queue.
    The Send Queue is the queue that Q Capture writes to, the Receive Queue is the queue that Q Apply reads from, and the Administration Queue is the queue that Q Apply writes messages back to Q Capture with.