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 » WebSphere Message Broker (ACE) Support » Order of starting execution groups

Post new topic  Reply to topic
 Order of starting execution groups « View previous topic :: View next topic » 
Author Message
zpat
PostPosted: Thu Apr 12, 2012 11:48 am    Post subject: Order of starting execution groups Reply with quote

Jedi Council

Joined: 19 May 2001
Posts: 5866
Location: UK

I have been asked if it is possible to control the order of execution group startup - so that execution group B is only started once execution group A is up.

My response was that this is not even desirable (as a design), let alone possible, but I would be interested in anyone who has solved a similar issue.

I tend to think that this is another example of WMB being used as an apps server and not as middleware. The most harmless idea I have is to insert a ESQL sleep into the flows that want to start later.

WMB 7003 on AIX.
Back to top
View user's profile Send private message
Vitor
PostPosted: Thu Apr 12, 2012 12:05 pm    Post subject: Re: Order of starting execution groups Reply with quote

Grand High Poobah

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

zpat wrote:
I tend to think that this is another example of WMB being used as an apps server and not as middleware.


Or management looking at a dependancy diagram.

If this is actually a problem that needs solving, then what you need to do is find out why execution group A takes so long to start that all the dependant flows in execution group B time out waiting for it, or why the timeouts in execution group B are set so short.

Could it be badly phrased? That execution group B starts and runs only if execution group A is running, i.e. if execution group A crashes execution group B stops processing until it's back? That would be marginally less bonkers but easily fixed by the deft deployment of a few WMQ queues and some monitoring.

As to your original point, AFAIK it's not possible to impose an order. I may not know far enough.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
smdavies99
PostPosted: Thu Apr 12, 2012 9:56 pm    Post subject: Reply with quote

Jedi Council

Joined: 10 Feb 2003
Posts: 6076
Location: Somewhere over the Rainbow this side of Never-never land.

If all you want to achieve is to delay the start of processing of messages

AND

all the flows start with an MQInput Node then you could always GET_INHIBIT the queues until the other EG has commenced processing messages.

Being realistic, starting an EG and its deployed flows is a complicated process. Some of the things that MIGHT well have to be done are :-

Load the MessageModels specified in the Input Nodes into Memory
Start the HTTP, HTTPS Server for SOAP
Start the HTTP, HTTPS Server for HTTP
Create the TCPIP Server Listening Environment
Initialise the various heaps and pools.

There is a lot going on. Naturally, an EG with a big mix of flows and say 50+ flows is going to take a lot longer to startup than those with just a few MQInput driven flows.

I've seen a broker (V6.1) take 40+ minutes to startup and reach a quiescent state. Several times an EG would restart because the ConfigMgr had not received a response saying "I'm up" within the time limit. This is all due to resource contention. Restarting a single EG while the broker was running was pretty quick (relatively). It all came down to using inadequate H/W (CPU Grunt) for the job.
At those times, I did feel that a way to schedule the startup of each EG would have been preferable to the 'All at once' method currently used.

Sadly, this does not seem possible with the current Broker releases.
Time for an improvement request maybe?
_________________
WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995

Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions.
Back to top
View user's profile Send private message
zpat
PostPosted: Fri Apr 13, 2012 12:19 am    Post subject: Reply with quote

Jedi Council

Joined: 19 May 2001
Posts: 5866
Location: UK

Alternatively WMB could load everything up - and only when all EGs were ready for the "off", actually fire the starting gun.

Currently the approach is "Gentlemen, start your engines"...

I don't like the idea of inhibiting queues and so forth because it would make both routine stop/starts and HA failovers a lot more complex.

Better error/exception/retry logic in the flows would really be desirable - but too many developers don't consider the possible real-world issues when they code up flows.

The use of allegedly modern protocols like Web Services has made the problem worse. Good old MQ can just buffer the different flows and you don't need to wait because the response message can start another flow.
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Fri Apr 13, 2012 5:39 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

You could write a script that starts each EG or each MF at the time needed.
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Order of starting execution groups
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.