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 » Can MQ Client listen for Msgs through BigIP?

Post new topic  Reply to topic
 Can MQ Client listen for Msgs through BigIP? « View previous topic :: View next topic » 
Author Message
magvlvri
PostPosted: Thu Sep 10, 2015 6:18 am    Post subject: Can MQ Client listen for Msgs through BigIP? Reply with quote

Apprentice

Joined: 07 Nov 2014
Posts: 26

I have a pretty simple question.

There are two IIB servers, A and B with their own queue managers with identical queue setup.

We have a WAS server that hosts an application which will need to pick up messages from the above two queue managers.

For example, Q1 is the queue where request messages are put by IIB servers and the WAS application needs to pick them up(from each IIB remote queue managers) and process and put the response on Q2 on the same queue manager(where it picked up the request).

How can this be achieved? We are checking to see if something like BigIP would help in WAS server to talk to both queue managers instead of creating seperate bindings for each queue manager?
Back to top
View user's profile Send private message
mqjeff
PostPosted: Thu Sep 10, 2015 6:23 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

You can use BigIP or F5 to balance which queue manager an MQ Client connects to.

Once the client is connected, you can't balance between which queue manager it talks to. The network load balancer has to allow the connections to remain uninterrupted.

You can, as you say, use multiple connections and have your application load balance between those.

You can also review the options in a CCDT.
_________________
chmod -R ugo-wx /
Back to top
View user's profile Send private message
Vitor
PostPosted: Thu Sep 10, 2015 6:28 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

A synchronous client connection can be put through BigIP or other load balanced device. A queue manager to queue manager connection cannot (I know you're not talking about that but I'm forestalling a future question).

You need to configure the WAS connection pool to point to the VIP on the front of the balancer, and ensure that the balancer maintains TCP/IP sessions as "sticky". Don't ask me how you do that, or what actually happens, but from the front it means that each connecting thread is routed to one or other of the targets behind the balancer and all subsequent traffic from the same thread goes to that same target. The default (apparently) is to spray sessions across the available targets and that is a short road to 2009/2019/2059 errors.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
magvlvri
PostPosted: Thu Sep 10, 2015 6:29 am    Post subject: Reply with quote

Apprentice

Joined: 07 Nov 2014
Posts: 26

I have been hearing from some of my associates that this BigIP or F5 based solution is only viable in case of an MQclient pushing messages to remote queue manager,but not possible to listen or pickup messages from multiple remote queue managers.

I couldnt find any mq or f5 documentation that helps as well. so i was wondering if it was possible at all.
Back to top
View user's profile Send private message
mqjeff
PostPosted: Thu Sep 10, 2015 6:31 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

magvlvri wrote:
I have been hearing from some of my associates that this BigIP or F5 based solution is only viable in case of an MQclient pushing messages to remote queue manager,but not possible to listen or pickup messages from multiple remote queue managers.

I couldnt find any mq or f5 documentation that helps as well. so i was wondering if it was possible at all.


There's nothing that should be able to block an MQClient connection from putting as well as getting messages - except MQ Security.

Again, the network load balancer can only be used when the connection is opened.

And each MQ Client connection can only talk to one queue manager.
_________________
chmod -R ugo-wx /
Back to top
View user's profile Send private message
Vitor
PostPosted: Thu Sep 10, 2015 6:35 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

magvlvri wrote:
I have been hearing from some of my associates that this BigIP or F5 based solution is only viable in case of an MQclient pushing messages to remote queue manager,but not possible to listen or pickup messages from multiple remote queue managers.


Each thread still connects to a single queue manager so it's true that you can't service multiple queue managers on a single connection. You should get your associates to quote their sources.

magvlvri wrote:
so i was wondering if it was possible at all.


If it's not, don't tell the WAS servers here. I've had enough Prod issues this week without all the load balanced client connections stopping working because you can't actually do that.........
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
magvlvri
PostPosted: Thu Sep 10, 2015 6:37 am    Post subject: Reply with quote

Apprentice

Joined: 07 Nov 2014
Posts: 26

Thanks for replies mqjeff and vitor.
Any reference documentation for this would be very helpful.

I am interested in finding out how the connection once established would be released.

For example, the first time the WAS application comes up, if it successfully established the connection with one IIB queue manager, does the connection stay with the same queue manager forever or is the connection released and re-established every configurable time interval, in which case the load balancer can route it to the other IIB queue manager?
Back to top
View user's profile Send private message
mqjeff
PostPosted: Thu Sep 10, 2015 6:40 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

The Knowledge Center should have the reference information you're looking for.

An MQ Client connection is remains open until it's closed by the application, the queue manager (only in error conditions or security failures during connect) or when it's broken at the network level.

WAS may have additional controls on this, in the area of connection pool timeouts and etc. These should close the connection gracefully.
_________________
chmod -R ugo-wx /
Back to top
View user's profile Send private message
Vitor
PostPosted: Thu Sep 10, 2015 6:45 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

magvlvri wrote:
Any reference documentation for this would be very helpful


If you find some, post the link. We had a similar requirement and just invented this from scratch.

magvlvri wrote:
I am interested in finding out how the connection once established would be released.


When the MQ client disconnects. If it's released before then (it's not "sticky") you get the errors I indicate above.

magvlvri wrote:
For example, the first time the WAS application comes up, if it successfully established the connection with one IIB queue manager, does the connection stay with the same queue manager forever


The balancer must actively ensure that this happens. Remember that the client side MCA is in a conversation with the server side MCA and that has to be maintained.

magvlvri wrote:
is the connection released and re-established every configurable time interval, in which case the load balancer can route it to the other IIB queue manager?


If that happens, the client side MCA is suddenly talking to a server side MCA that's never heard of it. The conversation is broken and you get errors. By default most balancing technologies think you can spray sessions in this manner; that's true for a web service model but not for MQ.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
mqjeff
PostPosted: Thu Sep 10, 2015 6:51 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

Also, perhaps this thread doesn't belong in the IIB forum.
_________________
chmod -R ugo-wx /
Back to top
View user's profile Send private message
Vitor
PostPosted: Thu Sep 10, 2015 7:02 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

mqjeff wrote:
Also, perhaps this thread doesn't belong in the IIB forum.


So moved.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
magvlvri
PostPosted: Thu Sep 10, 2015 7:15 am    Post subject: Reply with quote

Apprentice

Joined: 07 Nov 2014
Posts: 26

So, keeping in mind the way the connection persists to just one queue manager even if the connection is facilitated through a load balancer, is it safe to say that if we truely want the WAS/standalone java client to pick up messages from both remote queue manages, the java client needs to be have seperate bindings to both the remote queue managers and thats the best way to go about it?
Back to top
View user's profile Send private message
mqjeff
PostPosted: Thu Sep 10, 2015 7:18 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

No.

If the load balancer spreads connections across both queue managers, then the same binding will point to both. So only one is needed.

But you have to be careful about qmgr names in your JNDI config.

There's a secondary point that MQ should be perfectly able to move messages to a single queue manager for you, without requiring you to talk to more than one.
_________________
chmod -R ugo-wx /
Back to top
View user's profile Send private message
Vitor
PostPosted: Thu Sep 10, 2015 7:21 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

magvlvri wrote:
is it safe to say that if we truely want the WAS/standalone java client to pick up messages from both remote queue manages, the java client needs to be have seperate bindings to both the remote queue managers and thats the best way to go about it?


No, it's not safe to say either of those things.

IMHO it's best to have a single binding point to the VIP and have that service all the needed queue managers. It's for this reason I'm doing this in our Prod environment at the moment.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
PeterPotkay
PostPosted: Thu Sep 10, 2015 4:18 pm    Post subject: Reply with quote

Poobah

Joined: 15 May 2001
Posts: 7722

magvlvri wrote:
So, keeping in mind the way the connection persists to just one queue manager even if the connection is facilitated through a load balancer, is it safe to say that if we truely want the WAS/standalone java client to pick up messages from both remote queue manages, the java client needs to be have seperate bindings to both the remote queue managers and thats the best way to go about it?


I say yes. There is no way you are going to guarantee that each of your queue managers behind the Load Balancer has at least one thread pulling if you let the load balancer decide where to direct each connection attempt. Oh sure, you can make 1,000 connections and hope the law of large numbers gets at least one connection to every QM.

You need to control this and not leave it to chance ( as determined by the load balancer) when you need to ensure specific queues on specific QMs have connections.
_________________
Peter Potkay
Keep Calm and MQ On
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 » Can MQ Client listen for Msgs through BigIP?
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.