ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » General IBM MQ Support » Queuemanager alias setup for resolving - Need experts help

Post new topic  Reply to topic
 Queuemanager alias setup for resolving - Need experts help « View previous topic :: View next topic » 
Author Message
kishi_25
PostPosted: Wed Aug 17, 2011 7:05 am    Post subject: Queuemanager alias setup for resolving - Need experts help Reply with quote

Centurion

Joined: 19 Jul 2011
Posts: 100

hi,

I'm having QM1 and QM2, I have defined sender/receiver channel pairs between QM1and QM2.
I have applications, which can put messages to 3 different queues Q1, Q2 and Q3 on QM2. For this scenario, I was told by defining the QMalias as below will take care of routing requests to different queues on QM2.

DEFINE QREMOTE(SAMPLE) +
DESCR('ALIAS FOR REMOTE QM) +
RNAME(' ') +
RQMNAME('QM2') +
XMITQ('ABC') +

Now, my questions is if application A on QM1 puts a message to Q3 on QM2, using QREMOTE and channeals, when the message reaches the destination QM, how does it now, it has to go for Q3 as We are not specifiying Q3 anywhere?

Will this concepts works really?
Back to top
View user's profile Send private message
mqjeff
PostPosted: Wed Aug 17, 2011 7:08 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

You're telling it to put messages to a specific XMITQ.

That XMITQ can only be read by one channel, which goes to QM3.
Back to top
View user's profile Send private message
kishi_25
PostPosted: Wed Aug 17, 2011 7:11 am    Post subject: Reply with quote

Centurion

Joined: 19 Jul 2011
Posts: 100

Agree..till it goes to QM3, but it goes to QM3 how does QM3 identifies whether it has to send Q1 or Q2 or Q3 ?
Back to top
View user's profile Send private message
kishi_25
PostPosted: Wed Aug 17, 2011 7:19 am    Post subject: Reply with quote

Centurion

Joined: 19 Jul 2011
Posts: 100

My question is if application A on QM1 want to send message to Queue Q3 on QM2, when it uses QMANAGER ALIAS (instead of QREMOTE), no where we are specifiying about Q3..then how does destination QM QM2 know that, the message is intended for Q3? Even transmission Queue also doesn't know ..this..
Back to top
View user's profile Send private message
mqjeff
PostPosted: Wed Aug 17, 2011 7:40 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

Because the app can send to a destination of (Q2,SAMPLE).

This will put the message on the 'ABC' xmitq, send it to QM3, which will then look for Q2.

But be aware that the application can just as easily send to a destination of (SYSTEM.ADMIN.COMMAND.QUEUE,SAMPLE) with this setup. And unless the RCVR channel on the other end has an MCAUSER that prevents it, there's nothing you can do to stop it.
Back to top
View user's profile Send private message
sunny_30
PostPosted: Wed Aug 17, 2011 7:44 am    Post subject: Reply with quote

Master

Joined: 03 Oct 2005
Posts: 258

Queue/ QueueManager resolution in the following order:
To ensure the right transmission queue is found the administrator has the following:
•A transmission queue with the same name as the QM will be automatically chosen
•A remote queue can explicitly define a transmission queue for a queue or for a QM
•Clustered destinations will be discovered automatically
•If all else fails a default transmission queue can be used.
Back to top
View user's profile Send private message
kishi_25
PostPosted: Wed Aug 17, 2011 7:50 am    Post subject: Reply with quote

Centurion

Joined: 19 Jul 2011
Posts: 100

Can you please more detail? how does this setup work?

you mean Q2 is Queue and SAMPLE is destination Queue manager?

if this is true, in this setup is the application has to issue two put calls?
1. for Transmission queue and 2. for Queue manager alias?

Also, how can I prevent to wrong destination at RCVR end using MCAUSER?
Back to top
View user's profile Send private message
mqjeff
PostPosted: Wed Aug 17, 2011 8:00 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

No.

An Application always always always issues an MQPUT that specifies both an Object Queue and an Object Queue Manager value. Sometimes one or the other of those values are 'empty'... particularly the Object queue Manager, but they are still always specified.

If the application puts "SAMPLE" into the Object Queue Manager value, then it will resolve and put the message on the XMITQ mentioned in the definition of SAMPLE. If it likewise puts 'Q2' into the Object Queue, then that value will be carried forward in the RQNAME and looked up on the receiving qmgr.

Set the value of MCAUSER to a known user on the receiving side. issue the appropriate setmqaut commands to prevent that user from accessing any queues that are not supposed to be accessed.
Back to top
View user's profile Send private message
kishi_25
PostPosted: Wed Aug 17, 2011 8:13 am    Post subject: Reply with quote

Centurion

Joined: 19 Jul 2011
Posts: 100

thanks jeff. is my below understanding is correct?

when the application puts
Resolved Qname(Q3) and Resolved QMNAme(SAMPLE AS Queeu manager alias),

i) The resolved Qname Q3 will be passed to Transmission header in Transmsission Queue ABC,

ii) and SAMPLE Queue manager alias will be resovled to target QM QM2 from following definition and also will be added in Transmission header of ABC xmit queue

With this transmission will have both target queue and QM.

DEFINE QREMOTE(SAMPLE) +
DESCR('ALIAS FOR REMOTE QM) +
RNAME(' ') +
RQMNAME('QM2') +
XMITQ('ABC') +

Please confirm the above process is correct.
Back to top
View user's profile Send private message
mqjeff
PostPosted: Wed Aug 17, 2011 8:16 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

Does that match what the documentation says?
Back to top
View user's profile Send private message
bruce2359
PostPosted: Wed Aug 17, 2011 8:39 am    Post subject: Re: Queuemanager alias setup for resolving - Need experts h Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 9469
Location: US: west coast, almost. Otherwise, enroute.

kishi_25 wrote:
I was told by defining the QMalias as below will take care of routing requests to different queues on QM2.

DEFINE QREMOTE(SAMPLE) +
DESCR('ALIAS FOR REMOTE QM) +
RNAME(' ') +
RQMNAME('QM2') +
XMITQ('ABC') +

You were misled. A queue-manager-alias allows for the queue-manager name to be changed (modified, resolved).

The folks at the WMQ factory, faced with the issues of how to redirect a message to another qmgr, or how to override the RQMNAME field in the XQH, chose to use a QR definition, BUT without the RNAME field. Confusion has reigned ever since.

A queue-alias allows for a queue name to be changed (altered, resolved). A queue-alias looks like this:
DEF QA(QUEUE.NAME) +
TARGQ(ANOTHER.NAME).

There are discussions here, and doc in Intercommunications manual that explains the purposes of a qmgr-alias.
_________________
I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live.
Back to top
View user's profile Send private message
kishi_25
PostPosted: Wed Aug 17, 2011 11:50 am    Post subject: Reply with quote

Centurion

Joined: 19 Jul 2011
Posts: 100

hi

I think, you read my initial post only. But after discussing with Jeff and others in this forum, I'm thinking of below approach will work.
are you seeing any issues in this?

when the application puts
Resolved Qname(Q3) and Resolved QMNAme(SAMPLE AS Queeu manager alias),

i) The resolved Qname Q3 will be passed to Transmission header in Transmsission Queue ABC,

ii) and SAMPLE Queue manager alias will be resovled to target QM QM2 from following definition and also will be added in Transmission header of ABC xmit queue

With this transmission will have both target queue and QM.

DEFINE QREMOTE(SAMPLE) +
DESCR('ALIAS FOR REMOTE QM) +
RNAME(' ') +
RQMNAME('QM2') +
XMITQ('ABC') +

Ofcourse I agree just by using above definition may not work for routing messages to different queues..I should specifiy the queue name in application call..
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » General IBM MQ Support » Queuemanager alias setup for resolving - Need experts help
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.