camel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Claus Ibsen <claus.ib...@gmail.com>
Subject Re: [HEADS UP] - Optimzing routing engine to reduce stack frames in use during routing
Date Tue, 28 May 2013 11:18:19 GMT
Possible 2 + 3 implemented.


Raul did you by any chance had a chance to take a look also?

What remains is gnodets suggest which has been listed as task 18.
And then the naming of the new API and possible adding a bit more javadoc etc.




On Tue, May 28, 2013 at 10:26 AM, Claus Ibsen <claus.ibsen@gmail.com> wrote:
> Hi
>
> So after a week we got good progress on this one.
> We have been able to reduce the stack-frames with a factor of 2 - 3 times.
>
> The sample we have been using for benchmark is down from 40 to 16.
> And there is room for 1, 2 or 3 more to be shaved off.
>
>
> Possible #1)
> The JMX InstrumentationProcessor is harder to "reduce" as it wraps the
> processor in the route to be executed, eg
> - an EIP
> - a custom bean
> - a custom processor
> - etc.
>
> So it sits there and track utilization, how many calls, how long time,
> how many success / failures / redeliveries etc.
> And its this fine grained "redelivery" that is a challenge.
>
> If we want to keep having fine grained redelivery tracking and
> whatnot, then it has to sit just at the edge of the actual processor
> being invoked, eg in between the error handler and the processor. So
> when the error handler "kick in" and do a redelivery, we can keep
> track of that.
>
>
> Possible #2)
> Just noticed these two which can be optimized. This ought to be easy and doable.
>
> at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:391)
> at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:273)
>
>
> Possible #3)
> When calling a custom Processor that is only sync we could enhance
> logic at places to call the sync processor without using the
> ProcessorToAsyncProcessorBridge. This is also what gnodet have
> suggested.
>
>
>
>
>
>
>
>
>
>
>
>
>
> --
> Claus Ibsen
> -----------------
> www.camelone.org: The open source integration conference.
>
> Red Hat, Inc.
> FuseSource is now part of Red Hat
> Email: cibsen@redhat.com
> Web: http://fusesource.com
> Twitter: davsclaus
> Blog: http://davsclaus.com
> Author of Camel in Action: http://www.manning.com/ibsen



-- 
Claus Ibsen
-----------------
www.camelone.org: The open source integration conference.

Red Hat, Inc.
FuseSource is now part of Red Hat
Email: cibsen@redhat.com
Web: http://fusesource.com
Twitter: davsclaus
Blog: http://davsclaus.com
Author of Camel in Action: http://www.manning.com/ibsen

Mime
View raw message