Author |
Message
|
kavithadhevi |
Posted: Fri Feb 20, 2004 10:20 am Post subject: Gateway flow... |
|
|
 Master
Joined: 14 May 2002 Posts: 201 Location: USA
|
I am really confused reading the MQ Clustering regarding the gateway queuemanager to acheive accessing / put message to a queue.
One way I understand the concept that this allows a generic queue manager name or the clustername itself to access the queues,which is what i am trying to acheive.
Application shouldn't worry about what queue manager name to give, neither should worry which one is active. and same goes with the application listening for messages in the queue to get them.
I would really appreciate, if anyone could give me a small tutorial or make me understand how to achieve this one.
Please help me ASAP. After a long try with clustering and frustration, i am asking for help from you all.  _________________ Thanks in Advance.
Kavitha
IBM Certified System Administrator
Websphere MQ v 5.3
www.zealphoenix.com |
|
Back to top |
|
 |
jefflowrey |
Posted: Fri Feb 20, 2004 10:40 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
The way a gateway queue manager should work is this:
An application connects to the gateway queue manager.
The application PUTs messages to queues that are qcluster objects, and not locally defined on the gateway.
The application GETs messages from queues that are qlocal objects and shared in the cluster.
The application doesn't specify QMGR names on the messages, merely on the connect.
This way, in a request/reply scenario, neither the apps on the gateway or the apps on the cluster need to know which QM the queues they are *putting* to live on. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
mq_guru |
Posted: Mon Feb 23, 2004 11:10 pm Post subject: |
|
|
Novice
Joined: 23 Feb 2004 Posts: 13
|
With in a cluster setup, if a queue is defined and made it as cluster queue, then one can put the message from the application to any queue manager with in the cluster.
If you don't want to mention the Queue Manager name, you can use the default queue manager option. In this case, the application will connect to the default Qmgr all the time and puts the message into the cluster queue. But make sure that, atleast one of the queue managers in the cluster is default.
But no option is availalbe to get the message with out providing the Qmgr name unless, the cluster queue is located in the default queue manager.
hope this helps.
thanks - vivek |
|
Back to top |
|
 |
oz1ccg |
Posted: Tue Feb 24, 2004 12:46 am Post subject: |
|
|
 Yatiri
Joined: 10 Feb 2002 Posts: 628 Location: Denmark
|
Anyway if you want to get a reply back to the sending application (connected) to the gateway queuemanager, you'll have to have a local queue defined there.
This will ofcause require that this queue is accesable from the queuemanagers with the server applications. You use the ReplyToQ and ReplyToQMgr to pass the information to the server application.
I've tried to explin a little before on the setup here (your gateway would be QMX1 or QMX3).
http://mrmq.dk/cluster_qmb_3.htm
Just my $0.02  _________________ Regards, Jørgen
Home of BlockIP2, the last free MQ Security exit ver. 3.00
Cert. on WMQ, WBIMB, SWIFT. |
|
Back to top |
|
 |
kavithadhevi |
Posted: Thu Feb 26, 2004 12:37 pm Post subject: |
|
|
 Master
Joined: 14 May 2002 Posts: 201 Location: USA
|
Thank you for the responses.
Let me ask you this.
Is Clustering best solution for queue manager failovers?
I know it does the workload balancing.
Basically, what i am confused on a queue manager failure situation, does cluster support queue manager switches. If Clustering is not, then what option do i have to look for. _________________ Thanks in Advance.
Kavitha
IBM Certified System Administrator
Websphere MQ v 5.3
www.zealphoenix.com |
|
Back to top |
|
 |
jefflowrey |
Posted: Thu Feb 26, 2004 1:16 pm Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
kavithadhevi wrote: |
\Is Clustering best solution for queue manager failovers? |
The best solution for queue manager failovers is hardware clustering. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
kavithadhevi |
Posted: Fri Feb 27, 2004 1:09 pm Post subject: |
|
|
 Master
Joined: 14 May 2002 Posts: 201 Location: USA
|
Is there a way i acheive queue manager failure overs but pass messages without any switch or any logic via clustering or anything under IBM umbrella ????
Please need some suggestions ASAP. _________________ Thanks in Advance.
Kavitha
IBM Certified System Administrator
Websphere MQ v 5.3
www.zealphoenix.com |
|
Back to top |
|
 |
EddieA |
Posted: Fri Feb 27, 2004 2:24 pm Post subject: |
|
|
 Jedi
Joined: 28 Jun 2001 Posts: 2453 Location: Los Angeles
|
MQ Clustering will only send messages to an 'active' queue manager, so if one does go down, it will only send messages to the others. But it doesn't have any way of recovering mesages that are already at the failing Queue Manager. That's where hardware clustering comes into play.
Cheers, _________________ Eddie Atherton
IBM Certified Solution Developer - WebSphere Message Broker V6.1
IBM Certified Solution Developer - WebSphere Message Broker V7.0 |
|
Back to top |
|
 |
kavithadhevi |
Posted: Tue Mar 02, 2004 1:39 pm Post subject: |
|
|
 Master
Joined: 14 May 2002 Posts: 201 Location: USA
|
Hi,
Has any tried MC76 Support pac cluster exit... any suggestions/experience you would like to share with me regarding that cluster exit..
Where can i find cluster exits for queuemanager failover scenario... _________________ Thanks in Advance.
Kavitha
IBM Certified System Administrator
Websphere MQ v 5.3
www.zealphoenix.com |
|
Back to top |
|
 |
kavithadhevi |
Posted: Thu Mar 04, 2004 6:38 am Post subject: |
|
|
 Master
Joined: 14 May 2002 Posts: 201 Location: USA
|
Hello All,
Atlast, i have successfully got the gateway queue manager put messages to the other 2 queuemanagers in the cluster.
Now, i am trying to get this do the round robin puts to the queues in 2 of the queue managers in the clusters.
1. I have set all the queues as BIND NOT FIXED, that being one of the important setting to get this round robin work
2. Both the queue managers has local copy of the cluster queue which is another important factor.
3. Now, when i use a either client application or amqsput, i am not able to put messages to both queues sharing the numbers of messages i put.
4. I assume, that the round robin algorithms works in such a way that it would put messages sharing how many ever same named clustered queue are available in the cluster. Am i missing something in my understanding?
5. I am not able to get this round robin work and i notice that i see open only on one of the clustered local copy queue other clustered local copy queue has no opens.
Please help me. I appreciate your expertise suggestions / guidance. _________________ Thanks in Advance.
Kavitha
IBM Certified System Administrator
Websphere MQ v 5.3
www.zealphoenix.com |
|
Back to top |
|
 |
andye |
Posted: Thu Mar 04, 2004 9:48 am Post subject: |
|
|
 Newbie
Joined: 11 Nov 2003 Posts: 7 Location: HURSLEY
|
Hello,
If the queue manger that the application is connected to has a local copy of the queue, then all messges will go to that queue regardless. The way the algorithm works is documented in the Queue Manager Cluster manual (Chapter 11. using you own cluster workload exits) ..
1. If a queue name is specified, eliminate queues not PUT enabled.
1a. Eliminate remote instances of queues that do not share a cluster with the local queue manager.
1b. Eliminate remote CLUSRCVR channels that are not in the same cluster as the queue.
2. If a queue manager name is specified, eliminate queue manager alias? not PUT enabled.
2a. Eliminate remote CLUSRCVR channels that are not in the same cluster as the local queue manager.
3. If the result above contains the local instance of the queue, choose it.
4. If the message is a cluster PCF message, eliminate any queue manager we have already sent a publication or subscription to.
5. If only remote instances remain choose ?Resumed? queue managers over ?Suspended? ones.
6. If more than one remote instance remains include all MQCHS_INACTIVE and MQCHS_RUNNING channels.
7. If less than one remote instance remains include all MQCHS_BINDING, MQCHS_INITIALIZING MQCHS_STARTING and MQCHS_STOPPING channels.
8. If less than one remote instance remains include all MQCHS_RETRYING channels.
9. If less than one remote instance remains include all MQCHS_REQUESTING, MQCHS_PAUSED and MQCHS_STOPPED channels.
10. If more than one remote instance remains and the message is a cluster PCF message, choose locally defined CLUSSDR channels.
11. If more than one remote instance remains to any queue manager choose those with the highest NETPRTY to each queue manager .
12. If more than one remote instance remains, choose the least recently used.
So if you application queue manager doesn't have a local queue. then check the channels can run from the application queue manager to the two queue managers hosting the instances of the queue. Hope this helps  |
|
Back to top |
|
 |
|