Author |
Message
|
RocknRambo |
Posted: Wed Sep 27, 2006 7:39 am Post subject: JMS App and MQ cluster |
|
|
Partisan
Joined: 24 Sep 2003 Posts: 355
|
the scenario I have is..
two Qmgrs residing on two different machines are in MQ Cluster. and JMS application in installed on both machines receives web requests through external load balancer.
the JMS application has to communicate with the QMgr's to complete the process.
The Question I have is, can we configure the JMS application to communicate with clustered Queues (Qmgr's), to attain load balancing as well as failover.
I mean, If either Qmgr goes down, the applications shud communicate with other Qmgr, and If both Qmgr are up and running, the load shud be balanced. If QMgr1 goes down, both application instances shud turn to Qmgr2 and viceversa.. and if both Qmgr's are up, the load shud be balanced. is this possible.?
(pls lemme if the scenario is not picturized correctly)
Any pointings are appreciated. |
|
Back to top |
|
 |
jefflowrey |
Posted: Wed Sep 27, 2006 7:57 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
You probably want to configure the application to only use a server binding to the local queue manager, and have the application go down if the queue manager goes down.
You can also configure your JMS Queue Destinations to have a Queue Manager value that is the name of a QREMOTE that doesn't have a queue name or queue manager name specified in it. That will ensure that when your application sends data, that it will get load balanced across the cluster. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
Vitor |
Posted: Wed Sep 27, 2006 7:57 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
Short answer: yes you can.
Longer answer:
If you're on v5.3 or lower, you'll need a gateway queue manager to achieve load balancing. If you do a search in this forum using those terms you'll find a lot of discussion around this topic.
If you're using v6.0 you can use the same technique but there are additional parameters you can use to obtain the same effect. Look up CLWLPRTY in the Clusters manual (or online equivalent). There's also a whole section "Using clusters for workload management" that should get you started.
Happy Reading!  _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
jefflowrey |
Posted: Wed Sep 27, 2006 8:02 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Of course, MQ clustering doesn't provide connectivity load-balancing. It only provides load-balancing for message distribution. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
RocknRambo |
Posted: Wed Sep 27, 2006 8:30 am Post subject: |
|
|
Partisan
Joined: 24 Sep 2003 Posts: 355
|
Quote: |
Vitor wrote:
If you're on v5.3 or lower, you'll need a gateway queue manager to achieve load balancing. If you do a search in this forum using those terms you'll find a lot of discussion around this topic.
If you're using v6.0 you can use the same technique but there are additional parameters you can use to obtain the same effect. Look up CLWLPRTY in the Clusters manual (or online equivalent). There's also a whole section "Using clusters for workload management" that should get you started. |
We are using V6.0, the concept of Gateway queue manager - tht means, the application talks to Gateway queue manager correct ?
so, what if the gateway queue manager goes down for some reason? |
|
Back to top |
|
 |
jefflowrey |
Posted: Wed Sep 27, 2006 8:34 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
In v6, you don't need a gateway queue manager. You can configure both of the two queue managers you already have so that they will load-balance cluster queues regardless of whether or not there is a local instance. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
RocknRambo |
Posted: Wed Sep 27, 2006 8:49 am Post subject: |
|
|
Partisan
Joined: 24 Sep 2003 Posts: 355
|
Yep.. following the same,
now, can we configure the JMS app to talk to the Clustered queues, rather than to one specific QueueMgr ? if so how, shud we tweak the bindings file or the QCF ?
can this be achienved by leaving the Queue Manager field in the JMS Queue object blank?
so, will this take care of failover capability and load balancing ? I mean, the two instances of JMS App will talk to clustered queues.
sorry for mulitple questions, as currently reading bunch of resources and trying to visualize before preparing a SA
Thanks |
|
Back to top |
|
 |
jefflowrey |
Posted: Wed Sep 27, 2006 9:02 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
jefflowrey wrote: |
Of course, MQ clustering doesn't provide connectivity load-balancing. It only provides load-balancing for message distribution. |
And, no. You can't "connect" to a "cluster queue".
You can only connect to a queue manager.
You can only GET from queues that are QLOCALs on the queue manager you are connected to.
Your application can connect to more than one queue manager. Your application shouldn't connect to more than one queue manager.
jefflowrey wrote: |
You probably want to configure the application to only use a server binding to the local queue manager, and have the application go down if the queue manager goes down.
You can also configure your JMS Queue Destinations to have a Queue Manager value that is the name of a QREMOTE that doesn't have a queue name or queue manager name specified in it. That will ensure that when your application sends data, that it will get load balanced across the cluster. |
_________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
fjb_saper |
Posted: Wed Sep 27, 2006 3:05 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
jefflowrey wrote: |
You can also configure your JMS Queue Destinations to have a Queue Manager value that is the name of a QREMOTE that doesn't have a queue name or queue manager name specified in it. That will ensure that when your application sends data, that it will get load balanced across the cluster. |
Is IBM ever going to adopt the term 'Cluster Alias'? _________________ MQ & Broker admin |
|
Back to top |
|
 |
jefflowrey |
Posted: Wed Sep 27, 2006 3:29 pm Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
fjb_saper wrote: |
Is IBM ever going to adopt the term 'Cluster Alias'? |
I'm sure that it's an acceptable term at the Hursley lab. I use "QREMOTE" when I want to be precise... _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
|