Author |
Message
|
sraghukumar |
Posted: Fri May 20, 2011 9:42 am Post subject: Changing Message Flow configuration at Runtime |
|
|
Apprentice
Joined: 15 Feb 2011 Posts: 49
|
Hi Everyone,
I am working on some thing, i need to know how to change the Message Flow Configuration during runtime. I was thinking i could do using "mqsichangeproties" command, I was wrong about it. I came to know i can change broker/ExecutionGroup/Services properties only.
Can you guys suggest me any other command or method.
I dont want to redeploye flow, i just want to change some properties, like QueueName, etc.
Raghukumar |
|
Back to top |
|
 |
mqjeff |
Posted: Fri May 20, 2011 9:49 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
In Broker v6.1 and earlier, you use the ConfigMgr Proxy API to do this, or an application that uses the CMP API.
In Broker v7, you use the Administrative API to do this, or an application that uses the AdminAPI.
But you may not find that things like QueueName are exactly settable this way, or will necessarily take effect without a redeploy of the flow - or at least a stop and start of the flow. |
|
Back to top |
|
 |
Vitor |
Posted: Fri May 20, 2011 9:50 am Post subject: Re: Changing Message Flow configuration at Runtime |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
sraghukumar wrote: |
I dont want to redeploye flow |
Why not? The obvious method is to override the properties in the bar file.
sraghukumar wrote: |
i just want to change some properties, like QueueName, etc. |
Well you can read them out of a configuration file / database / environment variable but then you encounter the problem of how you trigger the flow to pick up the new copy once you change it without stopping or starting the flow. Such properties change so infrequently you might as well redeploy.
Unless
Your scenario is you have a running flow which you don't want to redeploy which has the wrong queue name etc in it and you want to "edit" it.
You can't. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
sraghukumar |
Posted: Fri May 20, 2011 10:08 am Post subject: |
|
|
Apprentice
Joined: 15 Feb 2011 Posts: 49
|
Thank you for your Response,
I am using broker V7.
Jedi, Can you tell me which Admini API will give my result. I am not sure, i can restart the broker or not, i have check that, Its in production.
Grand,
You are right i need to make some changes in bar file, like configure properties of selected built resource.
I want to change that property, during run time.
Thanks guys |
|
Back to top |
|
 |
mqjeff |
Posted: Fri May 20, 2011 10:10 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
sraghukumar wrote: |
Can you tell me which Admini API |
You have answered your own question.
sraghukumar wrote: |
I am using broker V7. |
 |
|
Back to top |
|
 |
Vitor |
Posted: Fri May 20, 2011 10:17 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
sraghukumar wrote: |
I want to change that property, during run time. |
But all of the methods mentioned by my most worthy associate and myself require either a redeploy of the bar file or a stop/start of the flow (which is tantermount to a redeploy).
So why not take the easy route & override the properties? _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
mqjeff |
Posted: Fri May 20, 2011 10:25 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
Vitor wrote: |
tantermount to a redeploy |
depending on the change control requirements in place, altering runtime properties and stopping and starting a program may not be tantamount to deploying code that has had configuration elements altered (even if the code is otherwise unchanged).
And in v7, the Administration Log should still record either change equally.
The real question is exactly which properties need to be changed, whether or not these properties are actually configurable, and whether or not the change control requirements in place allow anything other than a redeploy anyway.
Also, sraghukumar - you should discuss this change with your boss, and make sure that this person understands that you are having difficulty with it. they may then decide to give this task to a more senior person or provide you with more local assistance from a more senior person. |
|
Back to top |
|
 |
sraghukumar |
Posted: Sat May 21, 2011 2:51 am Post subject: |
|
|
Apprentice
Joined: 15 Feb 2011 Posts: 49
|
Thank you for all for suggestion,
When we build a bar file, we can change the properties of nodes, (for example, Data source in compute note and User Defined properties can be modified in Bar file). Then deploy to the broker. This is how usually we do in broker.
Jedi Council,
After we deploy the bar file, say i want to change the some User Defined Properties during Run time. can we do this.
Grand,
You are right, any changes made to code required to restart or refresh the Execution group. But my boos don't what to Restart, if there is any option to make changes to user defined properties and Refresh the EG would work for him.
Any suggestion around. |
|
Back to top |
|
 |
smdavies99 |
Posted: Sat May 21, 2011 3:50 am Post subject: |
|
|
 Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
If you Boss does not want to restart a flow to reload config stuff then that tells me he does not fully understand Broker. This is (IMHO) not out of the ordinary.
My solution to this issue at one place I worked was to read the values from a DB every 5 minutes. This was done using a timernode.
You do have to ask your boss how often does he expect things to change.
In some systems I have worked on this 'absolutely must have feature' turns out to be a 'nice to have' that is never used and not worth the effort required to implement it. _________________ 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 |
|
 |
Esa |
Posted: Mon May 23, 2011 11:07 pm Post subject: Re: Changing Message Flow configuration at Runtime |
|
|
 Grand Master
Joined: 22 May 2008 Posts: 1387 Location: Finland
|
sraghukumar wrote: |
I was thinking i could do using "mqsichangeproties" command, I was wrong about it. |
You were wrong when you thought you were wrong
In version 7 you can create a user-defined configurable service and define the values there. And change them in runtime with mqsichangeproperties. It works fine but you need to use CMP API to fetch the values from the broker. If you need to change node properties you have to write code to implement LocalEnvironment overrides for the properties. And for performance reasons you may want to cache the properties, which would require EG restart after you have changed the values. |
|
Back to top |
|
 |
|