Hi -- I am struggling to find a solution to get messages from MQ in a Interval that can be configured. i.e I want the MQ FSH to GET messages in a fixed interval like once every 60 minutes. Write now, my MQ FSH GETS the message as soon as somebody PUTs it in the queue. (Interval field that is available in the MQ FSH settings is for a different purpose).
Somewhere it was mentioned to use the XML Manager Scheduler to do that same but that is coming out to be a cumbersome solution to have it robust or if you can provide steps you did for achieving it thro' XMLManager Scheduler, I will greatly appreciate.
Pinned topic Need for a Solution for 'Get' Messages from MQ with a set Interval
Answered question This question has been answered.
Unanswered question This question has not been answered yet.
Updated on 2012-12-10T20:36:26Z at 2012-12-10T20:36:26Z by Bankrupt
PullMeOut 270005KU7P48 Posts
Re: Need for a Solution for 'Get' Messages from MQ with a set Interval2012-12-07T17:31:21ZThis is the accepted answer. This is the accepted answer.In MQFSH there is polling interval where you can mention your time , this does MQGET from the queue based on the time you give.
Bankrupt 270004RV0K39 Posts
Re: Need for a Solution for 'Get' Messages from MQ with a set Interval2012-12-10T20:36:26ZThis is the accepted answer. This is the accepted answer.
- PullMeOut 270005KU7P
MQ FSH does not wait for a fixed number of seconds based on the polling interval. Here is the scenario that describes the MQ FSH polling interval that you are referring to.
The usage of MQ FSH's Polling Interval is as below (assume Polling Interval is set as 600 seconds):
MQ FSH side:
MQ FSH sends MQGET to MQ server with Wait Interval 600 seconds -> MQ FSH waits for MQGET_REPLY.
MQ server side:
MQ server receives MQGET with Wait Interval 600 seconds. The following scenarios can happen:
(1) MQ server returns MQGET_REPLY with the message immediately if there is a message in the target queue,
(2) MQ server monitors the target queue and returns MQGET_REPLY with the message immediately if a message is PUT into the target queue in 600 seconds,
(3) MQ server monitors the target queue but after 600 seconds no message was PUTinto the target queue, then MQ server returns MQGET_REPLY with 2033 error (MQRC_NO_MSG_AVAILABLE) to MQ FSH
MQ FSH side:
MQ FSH waits for MQGET_REPLY. Once it gets MQGET_REPLY from MQ server, then sends the next MQGET action immediately. Once MQ FSH gets the MQGET_REPLY for the previous MQGET it will send the next MQGETaction immediately without waiting for the fixed time (e.g. 600 seconds) to send the next MQGET action. The time for sending the next MQGET action depends on when MQ FSH gets the MQGET_REPLY from MQ server.