|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
mq server communication and the use of network loadbalancers |
« View previous topic :: View next topic » |
Author |
Message
|
mhuse |
Posted: Mon Nov 03, 2008 10:03 am Post subject: mq server communication and the use of network loadbalancers |
|
|
Newbie
Joined: 03 Nov 2008 Posts: 4
|
I've seen a forum entry indicating that load balancing mq traffic via a network loadbalancer doesn't work unless the sender is an mq client. Is there any detail available on why this approach doesn't work with mq server communication?
I know that mq clustering can provide the load balancing for this type of situation and we are using it very successfully, but I'm being asked to explain why network load balancing options won't work.
Thanks! |
|
Back to top |
|
 |
KIT_INC |
Posted: Mon Nov 03, 2008 10:42 am Post subject: |
|
|
Knight
Joined: 25 Aug 2006 Posts: 589
|
One thing I know is MQ server channel remembers the sequence number of the message that it sends. The sending and the receiving ends checks the message sequence number to ensure that no message is lost. If you use load balancer on the receiving side, then message 1 sent will get to receiving qmgr 1 and the 2nd messge sent may get to receving qmgr 2. When the 3 rd message send, either of the receving qmgr will be expecting message 2. This will result in a sequence number out of sync situation and the channel will shut down. |
|
Back to top |
|
 |
bruce2359 |
Posted: Mon Nov 03, 2008 11:03 am Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
Quote: |
I'm being asked to explain why network load balancing options won't work. |
I'm not sure I understand exactly what you mean.
MQ channels (like SDR, RECEIVER, SERVER, REQUESTER) are statically defined and point-to-point. Programmers select the channel by opening a QRemote definition. If there are two channels from QMGR-A to QMGR-B, then there will likely be two QRemote definitions for the programmer to pick from.
Load balancing options work on Cluster channels. Cluster channels are point-to-point, but they are dynamically created by clustering software. Weighting and priority can be specified on cluster channel definitions to implement your site-specific preferences for channel selection. _________________ 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 |
|
 |
mhuse |
Posted: Mon Nov 03, 2008 11:48 am Post subject: |
|
|
Newbie
Joined: 03 Nov 2008 Posts: 4
|
Thanks for the replies so far; the reply from KIT_INC makes sense.
Bruce2359 - an example might help explain:
I have one qmgr sending requests and three qmgrs capable of
responding. If I set up a single sender channel, using a vip/port that
the network loadbalancer then maps/balances to
the three responding qmgrs ip/port, what causes the communication failure?
I understand that mq clustering easily handles the scenario, but I need to explain why I have to use mq clustering for load balancing rather than ip type loadbalancing.
Thanks. |
|
Back to top |
|
 |
fjb_saper |
Posted: Mon Nov 03, 2008 3:27 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
mhuse wrote: |
Thanks for the replies so far; the reply from KIT_INC makes sense.
Bruce2359 - an example might help explain:
I have one qmgr sending requests and three qmgrs capable of
responding. If I set up a single sender channel, using a vip/port that
the network loadbalancer then maps/balances to
the three responding qmgrs ip/port, what causes the communication failure?
I understand that mq clustering easily handles the scenario, but I need to explain why I have to use mq clustering for load balancing rather than ip type loadbalancing.
Thanks. |
One thing for sure... If you use VIP or similar for load balancing you need to always open and close the connection... This is a very expensive operation and is not practical. With MQ clustering you open the connection once, do all your puts and gets and close the connection when you are done. Neat and efficient.  _________________ MQ & Broker admin |
|
Back to top |
|
 |
PeterPotkay |
Posted: Mon Nov 03, 2008 4:55 pm Post subject: |
|
|
 Poobah
Joined: 15 May 2001 Posts: 7722
|
...but assumes the one QM you want to connect to in the cluster is always up and available.
Use MQ Clustering, hardware clustering and load balancing of incoming client connections (either thru MQ 7 Client Channel Tables or network load balancers) to insure you always have a QM to connect to, and once connected, you have lots of QMs to work on your request messages. If marroned messages are not a concern, you can skip the hardware clustering and just use the other 2. _________________ Peter Potkay
Keep Calm and MQ On |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
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
|
|
|
|