camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Claus Ibsen <claus.ib...@gmail.com>
Subject Re: Does Gracefull shutdown Mbean support waiting time argument?
Date Sat, 16 Oct 2010 07:13:54 GMT
Hi

I created a ticket, so we wont forget about this
https://issues.apache.org/activemq/browse/CAMEL-3240

On Thu, Oct 14, 2010 at 9:13 PM, Claus Ibsen <claus.ibsen@gmail.com> wrote:
> On Wed, Oct 13, 2010 at 12:24 PM, ext2 <xuhb@tongtech.com> wrote:
>> Hi:
>>  It seems the camel's graceful shutdownis just like the requirement "robust
>> stop application":  give a waiting time, force stop, and do it's best
>> ability to avoid lost message;
>>
>> But the camel cannot support "try to stop" interface; isn't it?
>
> Fell free to create a ticket about that last requirement to give up
> (eg try to stop but give up if you could not do it after X seconds).
>
>
>
>> ======================================================
>>>Hi
>>>Can you elaborate on the robust shutdown?
>>
>>>My experience is if you can't do the grace for shutdown with a certain
>>>time, the on flight exchanges maybe have no other change to be processed.
>>
>>>Do you mean Camel should store these on flight exchanges into a
>>>persistence storage, if the wait time is out.
>>
>> No, It doesn't ask for so such process.
>>
>> From the end user(system manager)'s point, it just means camel should give
>> him chance to choose:
>> 1) robust stop the application: It means the application must be stopped
>> until the waiting-time expired;
>> 2) or just try to stop application: it means the application must not be
>> stopped if system is still busy until waiting time out.
>>
>> This function could tell the system manager: if you don't want to lost the
>> message, you can do "try to stop " again and again. But if you couldn't
>> endure and choose to robust stop ((especially the case: deadlocked by extern
>> system), then you will have a risk to lost a message.
>>
>> whether using persistence storage or other means , it 's just a different
>> ways to implement the "try to stop" requirement; For example we can use
>> another simple ways to implement the requirement:
>> Suspending the consumer's IO operation to avoid  continue to process
>> external message; and just waiting the Exchange to be processed over;  if
>> the Exchange is still being processed while time out, just return false to
>> indicate try-stop failed;
>>
>> Thanks
>>
>>
>>
>>
>>
>>
>>
>
>
>
> --
> Claus Ibsen
> Apache Camel Committer
>
> Author of Camel in Action: http://www.manning.com/ibsen/
> Open Source Integration: http://fusesource.com
> Blog: http://davsclaus.blogspot.com/
> Twitter: http://twitter.com/davsclaus
>



-- 
Claus Ibsen
Apache Camel Committer

Author of Camel in Action: http://www.manning.com/ibsen/
Open Source Integration: http://fusesource.com
Blog: http://davsclaus.blogspot.com/
Twitter: http://twitter.com/davsclaus

Mime
View raw message