Author |
Message
|
next |
Posted: Tue Sep 21, 2010 4:53 am Post subject: How to retry a message indefinitely? |
|
|
Voyager
Joined: 02 May 2010 Posts: 75
|
My requirement is to retry a message indefinitely. Could anyone help me here? |
|
Back to top |
|
 |
Vitor |
Posted: Tue Sep 21, 2010 5:03 am Post subject: Re: How to retry a message indefinitely? |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
next wrote: |
My requirement is to retry a message indefinitely. Could anyone help me here? |
Push back on the requirement?
As has been discussed here recently, that's an odd and typically undesirible thing to want. What if your message fails because the message is improperly coded and can't be parsed? What if it fails because the flow requires an external resource (like a web service or a database) that's down with hardware issues? Do you really want this message (and potentially many others) churning round and round burning resources & holding up other, processable messages?
But the answer to your question is to simply represent the message to the broker. So set the backout threshold on the input queue to the maximum value & set up a dead letter handler so that when the broker tries to save itself by dead lettering this poison message it simply moves back.
Also find somewhere to hide when the sys admins come looking for you with sharp bits of metal & murderous intent.  _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
next |
Posted: Tue Sep 21, 2010 6:01 am Post subject: |
|
|
Voyager
Joined: 02 May 2010 Posts: 75
|
Hi Vitor,
Thanks for the reply.
The requirement is to hit a servlet and get a response. But when the servlet is down, they want to retry the message.
I have been going through the discussions in the forum and came across these things. Like servlet is down for hours and i am sure it is not a solution to retry.
But people argue like if the servlet is down, none of the other messages are going to be processed, so it is ok to retry. I dont have an answer for them
Regards,
Suresh. |
|
Back to top |
|
 |
Vitor |
Posted: Tue Sep 21, 2010 6:04 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
next wrote: |
I dont have an answer for them  |
I'd have an answer. It would involve profanity and trout. And asking them to actually think about what they're asking for.
I accept this may not be applicable to your situation.
I feel you have all the technical solutions that are available to you. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
smdavies99 |
Posted: Tue Sep 21, 2010 6:13 am Post subject: |
|
|
 Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
What you need is a mechanism that will try to poke the servlet on a periodic basis. By this maybe once a minute/hour/day/eon.
You most certainly do not want to try to poke it umpteen thousand times a minute.
That is just plain crazy. a Lunatic waste of resources if you ask me.
As Vitor says, puch back on the requirement and get some detail on what is supposed to happen when this absolutely mission critical, bet the future of the universe on its availability Servlet is down for possibly a zillion & one reasons. ( Idiot Sysadmin accidentally tripped over the power cord of the server running the applet...etc)
Is Life, The Univers & Everything going to come to a grinding halt if this one servlet is not working?
The answer is no so push back and get the design changed.
This is just plain crazy.
 _________________ WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995
Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions. |
|
Back to top |
|
 |
francoisvdm |
Posted: Sun Sep 26, 2010 9:02 pm Post subject: |
|
|
Partisan
Joined: 09 Aug 2001 Posts: 332
|
At least start out and put some limitation on the "retry".... start with 1 year and see if your customer is happy with that. If they agree that one year is ok for them....at least it is not "unlimited".... but I'll still reserve them some space in a Siberian asylum. But, at least you have something to work with, I know, I've had this as well, and in the end even a crazy client is still "right"..... right?
Then, make sure you put some form of reporting in place. Watch the depth of the "retry" queue, and if the depth is bigger than zero, then "email" support or the customer that a retry situation is happening and that you have "retried" now 134862 times. Hopefully they will see their error in thinking. _________________ If you do not know the answer or you get the urge to answer with "RTFM" or "Search better in this forum", please refrain from doing so, just move on to the next question. Much appreciated.
Francois van der Merwe |
|
Back to top |
|
 |
paranoid221 |
Posted: Mon Sep 27, 2010 10:25 pm Post subject: |
|
|
 Centurion
Joined: 03 Apr 2006 Posts: 101 Location: USA
|
That requirement is utter nonsense. It's like trying to force a square peg into a round hole.
Whoever is asking you for such requirement, you should ask them back on how much experience they have with system design/solution outline.
OK really!! Don't do what I said in my statement lest you would get yourself into trouble. _________________ LIFE is a series of complex calculations, somewhere multiplied by ZERO. |
|
Back to top |
|
 |
|