Author |
Message
|
vennela |
Posted: Thu Dec 05, 2002 7:59 am Post subject: QMGR that hosts UPES Queue ? |
|
|
 Jedi Knight
Joined: 11 Aug 2002 Posts: 4055 Location: Hyderabad, India
|
If I have a simple setup like this
Machine A - WFServer - FMCQM
Machine B - WebClient - FMCQM1
Which QMGR ususally hosts the UPES Queue. FMCQM or FMCQM1.
Maybe, I can put it in a different way. The messages that are put by WF to a UPES are processed at which QMGR - FMCQM or FMCQM1. We can process them wherever we want but which one is the best.
Regards
Venny |
|
Back to top |
|
 |
jmac |
Posted: Thu Dec 05, 2002 8:22 am Post subject: |
|
|
 Jedi Knight
Joined: 27 Jun 2001 Posts: 3081 Location: EmeriCon, LLC
|
Venny:
Assuming that your UPES queue is shared in the cluster, I don't think it matters.
Now, I can tell you that when we deploy a solution for a customer we have always put the UPES on the MQWF Server. My gut tells me that there is probably less overhead in doing this, but not knowing the internals of MQSeries I could be wrong here. _________________ John McDonald
RETIRED |
|
Back to top |
|
 |
Ratan |
Posted: Thu Dec 05, 2002 9:07 am Post subject: |
|
|
 Grand Master
Joined: 18 Jul 2002 Posts: 1245
|
Quote: |
Assuming that your UPES queue is shared in the cluster, I don't think it matters. |
John, I dont get what you mean by this. Though you cluster your UPES queue, all the messages for the UPES queue will be at the workflow Server box, if you defined your UPES on that box ( QM). The clustering would not take place if the queue is available locally to a QM to avoid communication overhead.
-Laze |
|
Back to top |
|
 |
jmac |
Posted: Thu Dec 05, 2002 9:19 am Post subject: |
|
|
 Jedi Knight
Joined: 27 Jun 2001 Posts: 3081 Location: EmeriCon, LLC
|
Laze:
First, realize that I know very little about MQSeries. Which is why I usually refrain from commenting on this type of question
What I was saying is that if you were to define the UPESQ on QM1 as long as it is shared in the cluster I think that the MQWF server will be able to get to it.
As far as your UPES goes, you could probably run it anywhere as long as it had access to the specified "Upes Queue". It just seems to me that running the UPES on the server box would be less overhead. _________________ John McDonald
RETIRED |
|
Back to top |
|
 |
Ratan |
Posted: Thu Dec 05, 2002 9:32 am Post subject: |
|
|
 Grand Master
Joined: 18 Jul 2002 Posts: 1245
|
John, I commented on the clustering part, because I need a solution like that for my load balancing problems and was wondering if there is any use with "clustering" of the UPES queue.
I would definetly not want my UPES to be run on the WebServer box, because it is server side processing and is definetly at a different layer than Webserver . If you believe your UPES does resource intensive tasks then it is probably a better Idea to run it on a seperate box than the workflow Server.
-Laze |
|
Back to top |
|
 |
jmac |
Posted: Thu Dec 05, 2002 9:52 am Post subject: |
|
|
 Jedi Knight
Joined: 27 Jun 2001 Posts: 3081 Location: EmeriCon, LLC
|
Laze wrote:
Quote: |
I would definetly not want my UPES to be run on the WebServer box, because it is server side processing and is definetly at a different layer than Webserver . If you believe your UPES does resource intensive tasks then it is probably a better Idea to run it on a seperate box than the workflow Server. |
We are in 100% agreement on this.
With the other:
Quote: |
I commented on the clustering part, because I need a solution like that for my load balancing problems and was wondering if there is any use with "clustering" of the UPES queue. |
The best we have is the following response from Volker Hoss from the IBM NewsGroup:
maybe you can use the load balancing of MQSeries?
What if the UPES queue is a cluster queue and several UPESes
are listening to this queue. I have never tried this, though.
Volker Hoss
MQSeries Workflow Development _________________ John McDonald
RETIRED |
|
Back to top |
|
 |
Ratan |
Posted: Thu Dec 05, 2002 10:09 am Post subject: |
|
|
 Grand Master
Joined: 18 Jul 2002 Posts: 1245
|
Quote: |
maybe you can use the load balancing of MQSeries?
What if the UPES queue is a cluster queue and several UPESes
are listening to this queue. I have never tried this, though.
|
I thought of it, and I think it wont work (atleast for me).
Here is why, I have the UPES queue defined locally on the WF server box. No even if I add another box and define the same queue and cluster it, messages will never get routed to the other box because MQSeries always puts messages on the local queue if it is available ( for avoiding communication overhead).
The only way around this is I have to remove the UPES queue from the workflow server and add 2 boxes with UPES queues and cluster them.
John, I believe you do a lot of UPES implementations, how do you usually take care of failover and load balancing ?
-Laze |
|
Back to top |
|
 |
vennela |
Posted: Thu Dec 05, 2002 12:39 pm Post subject: |
|
|
 Jedi Knight
Joined: 11 Aug 2002 Posts: 4055 Location: Hyderabad, India
|
I just tried this setup and it works fine.
FMC - FMCGRP - FMCSYS - FMCQM
FMC1 - FMCGRP - FMCSYS1 - FMCQM1
FMC2 - FMCGRP - FMCSYS2 - FMCQM2 - Web client
FMC3 - FMCGRP - FMCSYS3 - none - standard fat client
In the buildtime for the configurations FMC and FMC1 I have two UPESs defined. Their properties are as follows
ConfigID: ...Upess:...........QueueName........ QMGRName
FMC............HWORLD .......HELLOWORLD......DUMMY
FMC1..........HWORLD .......HELLOWORLD......DUMMY
On each queuemanager (FMCQM and FMCQM1) define a queue called HELLOWORLD. This can be clustered or non-clustered. I have used a non clustered queue.
Define QueueManager Aliases for DUMMY qmgr
On FMCQM:
define qr(DUMMY) rqname(' ') rqmname(FMCQM)
On FMCQM1:
define qr(DUMMY) rqname(' ') rqmname(FMCQM1)
Now I have a process that will put to a message to the UPES.
With FMCSYS up and FMCSYS1 down a message is put on the HELLOWORLD/FMCQM
It works the other way too.
I am yet to see if the loa balancing is done
Laze, why don't you try this and let me know what you think of it
---
Venny |
|
Back to top |
|
 |
vennela |
Posted: Thu Dec 05, 2002 12:53 pm Post subject: |
|
|
 Jedi Knight
Joined: 11 Aug 2002 Posts: 4055 Location: Hyderabad, India
|
Let me be little clear here
Code: |
[color=red]Now I have a process that will put to a message to the UPES.
[/color] |
I am using the UPES defined on FMCSYS
Infact I don't have a UPES defined on the other system... but I would like to have it too...
---
Venny |
|
Back to top |
|
 |
Ratan |
Posted: Thu Dec 05, 2002 12:59 pm Post subject: |
|
|
 Grand Master
Joined: 18 Jul 2002 Posts: 1245
|
Looks like it should work. I will give it a try and let you know. Let me know of your further findings.
-Thanx Laze |
|
Back to top |
|
 |
Vladimir |
Posted: Thu Dec 05, 2002 5:36 pm Post subject: |
|
|
 Acolyte
Joined: 14 Nov 2002 Posts: 73 Location: USA, CA, Bay Area
|
Venny,
You should at least consider 3 different designs for load balancing. Designs are:
1. Spread all UPES activity invocation messages among defined QMs evenly. That is the design you tesed.
2. Spread process instances among defined WF systems evenly. It can be done by sharing WF input queue in the cluster on FMC and FMC1 and sending processCreateAndStart messages to it from client concentrator.
3. 1+2.
Pros for 1st design are:
- CPU and resources workload is load balanced among WF systems
Cons:
- Messages are going back and forth between systems (in our case, for instance, they are distributed geographically) - it is kinda slowdown for the whole proccess in overall.
Pros for 2st design are:
- Each process instance is served on one box. Sometimes it is a huge performance benefit, for instance, when your programs connect to other systems and pooled connections or other types of cached resources can be used.
Cons:
- It is not "pure" load balancing.
And do not forget that in your design UPES must reply to QManager that sent an activity invocation request. 
Last edited by Vladimir on Fri Dec 06, 2002 5:04 pm; edited 2 times in total |
|
Back to top |
|
 |
Ratan |
Posted: Fri Dec 06, 2002 1:05 pm Post subject: |
|
|
 Grand Master
Joined: 18 Jul 2002 Posts: 1245
|
Venny,
Your solution works and is a great workaround. I guess this is the best solution for the issue ( atleast among those I considered).
-Thanks Laze. |
|
Back to top |
|
 |
|