|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
Design Ques (can't resend msg in event of error) |
« View previous topic :: View next topic » |
Author |
Message
|
catwood2 |
Posted: Mon Feb 09, 2004 1:25 pm Post subject: Design Ques (can't resend msg in event of error) |
|
|
Centurion
Joined: 17 May 2002 Posts: 108
|
Input, as usual, highly appreciated. If there is a particular manual or post that would be enlighening - I would appreciate a pointer.
Our environment: MQSeries 5.2 & WMQI 2.1
Issue:
A source application is unable to re-send a critical message after the original message has been sent to the target application. What is the best implementation for retaining the message so that in the event of an error, you have the ability to resend original message?
Option: Have the 'put' application place a copy of the message to a 'hold' queue on the source app queue mgr. When expected target app reply comes in - remove the message from the hold queue based on MsgId. Messages not removed would identify those that never got reply due to "some" error.
thanks |
|
Back to top |
|
 |
vennela |
Posted: Mon Feb 09, 2004 1:38 pm Post subject: |
|
|
 Jedi Knight
Joined: 11 Aug 2002 Posts: 4055 Location: Hyderabad, India
|
Quote: |
Have the 'put' application place a copy of the message to a 'hold' queue on the source app queue mgr. When expected target app reply comes in - remove the message from the hold queue based on MsgId. Messages not removed would identify those that never got reply due to "some" error.
|
I am trying to give a better solution for your option. There might be other better ways though.
Put your messages on HOLD queue with an appropriate expiry interval. Send the replies to only FAIL messages. These messages can be redelivered from the HOLD queue, while others expire. |
|
Back to top |
|
 |
PeterPotkay |
Posted: Mon Feb 09, 2004 6:09 pm Post subject: |
|
|
 Poobah
Joined: 15 May 2001 Posts: 7722
|
Since expired messages are only cleaned up if an app does an MQGET against the queue, you run the risk of the queue "filling up" with expired messages if there will be long periods of time where there is no failure and thus no reason to do a get against that queue.
Either GET every message off of the queue like you originally proposed, or issue a MQGET for a bogus MsgID every once in a while to flush the queue of expired messages. _________________ Peter Potkay
Keep Calm and MQ On |
|
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
|
|
|
|