Author |
Message
|
rahulhegde |
Posted: Tue Jan 21, 2014 10:55 pm Post subject: MQCB Support for IBM WMQ |
|
|
Novice
Joined: 06 Jan 2014 Posts: 19
|
Can anyone help to understandstand the MQCB internal implementation at WMQ FMK level. I would like to know event/sequence pattern when a message is put on the local queue.
1. What is the role of queue manager in the MQCB activity?
2. what is the OS level contribution to inform the WMQ FMK/Component about the new message put?
3. Which component is invoked in sequence?
4. Is there a polling mechanism internally used to acheive MQCB implementation? |
|
Back to top |
|
 |
mqjeff |
Posted: Wed Jan 22, 2014 6:33 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
|
Back to top |
|
 |
bruce2359 |
Posted: Wed Jan 22, 2014 6:47 am Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
Shall we presume that MQCB is the call-back feature? Or something else? _________________ 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 |
|
 |
rahulhegde |
Posted: Wed Jan 22, 2014 9:01 am Post subject: |
|
|
Novice
Joined: 06 Jan 2014 Posts: 19
|
1. WMQ FMK = Websphere Framework
2. So when you say callback, can this mean there could be a polling mechanism used by WMQ Framework which calls MQGET with MQGMO_WAIT option and that runs recursively?
3. Does "MQGET with MQGMO_WAIT" uses CPU cycles/system resources when there is no message on the local queue? |
|
Back to top |
|
 |
mqjeff |
Posted: Wed Jan 22, 2014 10:21 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
rahulhegde wrote: |
1. WMQ FMK = Websphere Framework |
Show me a link to an IBM website that discusses this "WebSphere Framework".
As far as I know, the "websphere framework" for accessing MQ is know as "JMS", not "FMK". |
|
Back to top |
|
 |
RogerLacroix |
Posted: Wed Jan 22, 2014 11:08 am Post subject: |
|
|
 Jedi Knight
Joined: 15 May 2001 Posts: 3264 Location: London, ON Canada
|
rahulhegde wrote: |
1. WMQ FMK = Websphere Framework |
That makes absolutely no sense. WMQ = WebSphere MQ. So, WMQ FMK would mean WebSphere MQ Framework which does NOT exist.
Now IBM does have a product called: WebSphere Dashboard Framework which would make the acronym WDF and maybe you don't want to use it because it is too close too 'WTF'.
rahulhegde wrote: |
2. So when you say callback, can this mean there could be a polling mechanism used by WMQ Framework which calls MQGET with MQGMO_WAIT option and that runs recursively? |
Oh boy. 'callback' and 'polling' are opposite terms.
rahulhegde wrote: |
3. Does "MQGET with MQGMO_WAIT" uses CPU cycles/system resources when there is no message on the local queue? |
Its waiting, hence, it is doing next to nothing. When you are at a bus stop waiting for a bus to arrive, you are waiting, right? Unless you got up late and are running down the street but that is not waiting at the bus stop.
Regards,
Roger Lacroix
Capitalware Inc. _________________ Capitalware: Transforming tomorrow into today.
Connected to MQ!
Twitter |
|
Back to top |
|
 |
bob_buxton |
Posted: Wed Jan 22, 2014 1:48 pm Post subject: |
|
|
 Master
Joined: 23 Aug 2001 Posts: 266 Location: England
|
MQCTL/MQCB could be considered as creating a task which is waiting for a message on any of several queues and calling the appropriate call back routine when a message does arrive.
Polling is not involved in most environments. _________________ Bob Buxton
Ex-Websphere MQ Development |
|
Back to top |
|
 |
bruce2359 |
Posted: Wed Jan 22, 2014 3:02 pm Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
bob_buxton wrote: |
MQCTL/MQCB could be considered as creating a task ... |
Task: think an in-memory subroutine or function that will be passed control (loaded into a processor) when a message arrives in a queue buffer.
Compare/contrast this (performance advantage) with a message arriving on a triggered queue that causes the o/s to fetch a program from disk, assign it to a processor, ... _________________ 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 |
|
 |
mqjeff |
Posted: Wed Jan 22, 2014 3:09 pm Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
Really, though, none of the copious documentation in the Info Center on how the MQCB routines actually work matters at all, if this WMQ FMK is something hand-coded by someone that doesn't use any of the standard MQ CallBack mechanisms.
So, while, yes, I would not think of the MQCB as being a task, but rather as being a thread mutex wait state that is released, with background processing by the message agent to actually fetch the message and prepare it, it really doesn't apply until there's more information about WMQ FMK. |
|
Back to top |
|
 |
PaulClarke |
Posted: Wed Jan 22, 2014 11:24 pm Post subject: |
|
|
 Grand Master
Joined: 17 Nov 2005 Posts: 1002 Location: New Zealand
|
It is perhaps worth pointing out that one of the reasons asynchronous consume (ie. MQCB) was put into the MQI was so that we could avoid polling. Prior to MQCB the implementation of JEE MDBs and JMS OnMessage did require the implementation to effectively poll the queue. It wasn't a busy loop but it did mean that it was burning CPU even when no messages were flowing. When the change was made to MCB it not only made the coding much easier for the applications but it also meant that polling was largely eliminated.
Cheers,
Paul. _________________ Paul Clarke
MQGem Software
www.mqgem.com |
|
Back to top |
|
 |
|