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 » Mainframe, CICS, TXSeries » help on Workload distribution using MQ triggering

Post new topic  Reply to topic
 help on Workload distribution using MQ triggering « View previous topic :: View next topic » 
Author Message
WBI_user
PostPosted: Sun May 30, 2010 10:05 am    Post subject: help on Workload distribution using MQ triggering Reply with quote

Partisan

Joined: 07 Aug 2001
Posts: 386

We have a sysplex of 2 ZOS each with a QMGR running. Each ZOS also 2 CICS regions. There is a shared queue which we like the messages in it to be processed by the 4 CICS regions evenly. The CICS transactions need to be started by MQ triggering. So we will have CKTI running on each CICS region.

Our first plan is to use a shared initq.
Please correct me if I am wrong. I think this is what will happen.
If we set up the Application Q (APPQ) with trigger on first. When a message is put to the APPQ, 2 trigger messages (one from each QMGR) will be generated. The 4 CKTIs will be competing for the trigger message. Two of them will get the message and start the CICS transaction. Then the APPQ will be opened for Input. Then there will not be further trigger message generated until APPQ curdepth goes from 0 to one again and this will repeat. This will mean that only two out of the 4 regions will be processing messages all the time. Am I right.

Then we think of using trigger every in the hope that more trigger messages will be generated and picked up by the other 2 CKTIs . But the documentation ( MQ application programming guide) says that "For shared queues, special conditions apply when multiple queue managers have trigger monitors running against a queue. In this situation, if one or more queue managers have the queue open for input shared, the trigger criteria on the other queue managers are treated as TriggerType MQTT_FIRST and TriggerMsgPriority zero." If this is right (i.e the Trigger type is treated as trigtype first), then no further trigger message will be generated because the APPQ is already opened by the first two transaction triggered.

Do I read the manual correctly ? If so, I need some help on how we can have the messages on APPQ handled evenly by the 4 CICS regions.
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Sun May 30, 2010 10:17 am    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

Depending on the volume you get you might think about running the processing of the queue as a started task in CICS
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
bob_buxton
PostPosted: Sun May 30, 2010 12:15 pm    Post subject: Reply with quote

Master

Joined: 23 Aug 2001
Posts: 266
Location: England

You understanding of trigger first is correct.

Trigger Every is seldom the correct answer for any triggering problem, it has very high overheads (put and get of a trigger message for every data message) and does not work in the way most users need or expect.

To start a transaction in each region you could set your triggered transaction to be a starter transaction whose purpose is to start instances of your processing transaction in each of the CICS regions.

For extra sophistication the starter transaction could periodically monitor the queue depth and if it is increasing start additional instances of the processing transaction.
_________________
Bob Buxton
Ex-Websphere MQ Development
Back to top
View user's profile Send private message
bruce2359
PostPosted: Sun May 30, 2010 12:16 pm    Post subject: Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 9469
Location: US: west coast, almost. Otherwise, enroute.

You have explained what you want to accomplish (messages distributed evenly). But you didn't explain why?

One of the advantages of a sysplex, it its natural pull-workload balancing - the z/OS image with the most resources (horsepower) will get to the appq ahead of the images with lesser resources. Why do you want to upset this normal balance?
_________________
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
View user's profile Send private message
WBI_user
PostPosted: Sun May 30, 2010 8:53 pm    Post subject: Reply with quote

Partisan

Joined: 07 Aug 2001
Posts: 386

We are trying to build a model which can handle a very large volume of messages. At this time is mostly understnading what we can do with a lot of assumptions which most likely need to be adjusted at real oerformance testing time. At this time, we can assuming that both ZOS has equal resources and so are all CICS regions. So, we think, the ideal situation will be evenly distributing the message processing across the 4 CICS regions until they max out, Then we can add regions as needed or even add ZOSs to the sysplex as volume increases. We understand that in real situation, ZOS sysplex workload balancing will probably distribute works to the two ZOS according to its logic resulting in message processing not evenly distributed between the 4 regions.
If I understand the answers so far correctly, just MQ triggering (even using trigger on every) cannot get work start on all 4 regions. I need trigger start a transaction which in turn start transactions in other AORs.
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Mon May 31, 2010 5:52 am    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

Like I said, you might want to forgo MQ triggering entirely and instead use the CICS started task...

Have fun
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
bruce2359
PostPosted: Mon May 31, 2010 6:34 am    Post subject: Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 9469
Location: US: west coast, almost. Otherwise, enroute.

Quote:
If I understand the answers so far correctly, just MQ triggering (even using trigger on every) cannot get work start on all 4 regions. I need trigger start a transaction which in turn start transactions in other AORs.

While I understand that this is a mental exercise, distributing messages with absolute precision so that each cics gets one and only one message (round-robin) circumvents what WLM tries to accomplish, namely: ensuring that workloads meet your organizations business GOALS.

Let me ask this in a different way. What issues/concerns do you have with WLM managing your workload?
_________________
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
View user's profile Send private message
bob_buxton
PostPosted: Mon May 31, 2010 7:43 am    Post subject: Reply with quote

Master

Joined: 23 Aug 2001
Posts: 266
Location: England

As I understand it the goal is to get all four CICS regions participating in Pull work load balancing not necessarily to achieve exact equality of workload in each region.
_________________
Bob Buxton
Ex-Websphere MQ Development
Back to top
View user's profile Send private message
mqjeff
PostPosted: Mon May 31, 2010 8:01 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

bob_buxton wrote:
As I understand it the goal is to get all four CICS regions participating in Pull work load balancing not necessarily to achieve exact equality of workload in each region.




And, despite not being a zOS/CICS person, I wonder if merely not using a *shared* initq will solve the problem....

Won't using a non-shared initq cause each qmgr to generate a trigger message on it's own local initq, each time a message gets put on the (shared) trigger queue?

It means that both regions will be competing for each message on the queue, but that's probably not entirely a bad thing.
Back to top
View user's profile Send private message
bruce2359
PostPosted: Mon May 31, 2010 11:01 am    Post subject: Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 9469
Location: US: west coast, almost. Otherwise, enroute.

From the OP:
Quote:
So, we think, the ideal situation will be evenly distributing the message processing across the 4 CICS regions until they max out, Then we can add regions as needed or even add ZOSs to the sysplex as volume increases. We understand that in real situation, ZOS sysplex workload balancing will probably distribute works to the two ZOS according to its logic resulting in message processing not evenly distributed between the 4 regions.


Why do you understand this to be the case with WLM?
_________________
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
View user's profile Send private message
bruce2359
PostPosted: Tue Jun 01, 2010 5:30 am    Post subject: Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 9469
Location: US: west coast, almost. Otherwise, enroute.

Are CICS transactions are MQ-aware or not?

WebSphere MQ in a z/OS Parallel Sysplex Environment, available at http://www.redbooks.ibm.com/redbooks/pdfs/sg246864.pdf , is a good source of information on (what I believe) you are attempting.

A shared initiation queue with TRIGTYPE=EVERY seems to solve the workload issue for you.
_________________
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
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 » Mainframe, CICS, TXSeries » help on Workload distribution using MQ triggering
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.