|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
MQ Trigger |
« View previous topic :: View next topic » |
Author |
Message
|
autorun |
Posted: Thu Apr 04, 2002 2:10 pm Post subject: |
|
|
Apprentice
Joined: 02 Feb 2002 Posts: 29
|
Greetings,
I am in the following situation which lead me to the following questions.
1. Platform: AIX
2. Capacity: around 1 million short message (1K) per day;
3. A C program to read messages from a queue and put them into other queue after certain processing have been done;
Questions:
1. Should we use triggering? People suggest the C program should be triggered by MQ, and stay there for certain period even if all the messages are processed in order to minimize the up and down bouncing overhead of the C program.
2. Only one instance of the C program can be exist at any time. How to ensure this if triggering is required to use?
Thanks,
Autorun
|
|
Back to top |
|
 |
StefanSievert |
Posted: Thu Apr 04, 2002 4:20 pm Post subject: |
|
|
 Partisan
Joined: 28 Oct 2001 Posts: 333 Location: San Francisco
|
Quote: |
Questions:
1. Should we use triggering? People suggest the C program should be triggered by MQ, and stay there for certain period even if all the messages are processed in order to minimize the up and down bouncing overhead of the C program.
|
One million messages per day would mean about 12 messages per second, assuming they are spread evenly across the 24 hours of a day. So, it sounds very unlikely that your program will terminate between messages. In any case, use of triggering is - I think - a good choice to ensure that something is processing a queue as soon as there are messages on a queue. It is also a good design practice, to specify a reasonable wait interval on the MQGET before the program terminates. This interval basically depends on your expected incoming message rate.
Quote: |
2. Only one instance of the C program can be exist at any time. How to ensure this if triggering is required to use?
|
If you use TRIGTYPE(FIRST), the queue manager will not generate additional trigger messages if there already is a process that has the triggered queue opened for input. You could force exclusive use by defining the queue as DEFSOPT(EXCL) and NOSHARE and/or specifying MQOO_INPUT_EXCLUSIVE on the MQOPEN call.
Hope that helps,
Stefan
_________________ Stefan Sievert
IBM Certified * WebSphere MQ |
|
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
|
|
|
|