|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
Channel Triggering and Program Triggering Diff? |
« View previous topic :: View next topic » |
Author |
Message
|
issac |
Posted: Sat Oct 04, 2008 10:58 pm Post subject: Channel Triggering and Program Triggering Diff? |
|
|
 Disciple
Joined: 02 Oct 2008 Posts: 158 Location: Shanghai
|
Quite unexpectedly I found two entries in MQ Must Gather, one is channel triggering and the other is program triggering.
I guess what I knew about is the program one. That is ,
1. define an initial queue for QMGR to put meta-data into;
2. define a process for trigger monitor to run once triggered;
3. define a qlocal with trigger type, initial queue name, process name which i just defined;
4. start runmqtrm(i think runmqtrm is the long running channel initiator program) to monitor if the initial queue has been put something into, and run the process if it does.
so what is channel trigger? i looked through the official doc http://publib.boulder.ibm.com/infocenter/wmqv6/v6r0/index.jsp?topic=/com.ibm.mq.csqzae.doc/ic10580_.htm but still gets no idea. Because I think this article is exactly describing what program triggering is, not the channel-triggering thing. But it's been titled this way. These 2 concepts sound too much similar for me.
anyone gets more material explaining what channel-triggering is ? thanks[/list] |
|
Back to top |
|
 |
issac |
Posted: Sun Oct 05, 2008 5:07 pm Post subject: |
|
|
 Disciple
Joined: 02 Oct 2008 Posts: 158 Location: Shanghai
|
|
Back to top |
|
 |
fjb_saper |
Posted: Sun Oct 05, 2008 8:05 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
No triggering channels is not so different from trigerring programs.
However instead of running runmqtrm you run runmqchi (channel initiator).
Also the channel initiatior is automatically started on SYSTEM.CHANNEL.INITQ by the qmgr at startup. In older times you needed a process. No longer since V5.3.
The trigdata of the xmitq contains the channel name to be triggered. If the field is blank the channel initiator will try to start the first channel having the queue as xmitq...
Enjoy  _________________ MQ & Broker admin |
|
Back to top |
|
 |
zhanghz |
Posted: Mon Oct 06, 2008 1:01 am Post subject: |
|
|
Disciple
Joined: 17 Jun 2008 Posts: 186
|
MQ has only one type of triggering. After some messages are put on a local queue, you want these messages to be processed automatically, so you use triggering.
triggering is set on a local queue by setting at least 5 attributes: TRIGGER, TRIGTYPE, TRIGDEPTH, PROCESS, INITQ. Other attributes related to triggering are TRIGMPRI, TRIGDATA. Once the 5 attributes are set accordingly, when there is a message in the queue and trigger condition is met, a program defined in PROCESS will be triggered to process the messages in the queue.
of course, triggering also needs a trigger monitor program to be always running, monitoring the INITQ continously for trigger messages.
MQ comes with 2 trigger monitoring programs, one is the trigger monitor that is invoked by program "runmqtrm", the other one is the channel initiator that automatically runs when QMGR is started or can be invoked by program "runmqchi" or MQRC command 'start chinit'.
trigger monitor invoked by "runmqtrm" monitors for messages put to NORMAL local queues, triggers the program defined the PROCESS to process messages. Channel initiator monitors for messages put to XMITQ queues, triggers MCA user to pick up the message in XMITQ and send out to the target QMGR, in doing so, MCA user starts the CHANNEL if the CHANNEL is in INACTIVE status.
More info can be found in section 6.3 (triggering) and 7.4.13 (channel initiation) of redbook SG24-7128-00 "MQ V6 Fundementals", or page 19-20 of book "MQSeries Primer". |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
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
|
|
|
|