camel-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Les Novell (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CAMEL-5675) Camel Route Startup Performance Slow
Date Thu, 04 Oct 2012 21:31:48 GMT

    [ https://issues.apache.org/jira/browse/CAMEL-5675?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13469733#comment-13469733
] 

Les Novell commented on CAMEL-5675:
-----------------------------------

Wow, thank you Claus. I was off work yesterday & surprised to come back today and see
this issue already addressed :) I will definitely give the changes a try & report back
the results.

I agree that the overall performance is generally OK. It was taking 1/2 - 1 sec to initialize
our routes. We were also applying advice in order to mock out certain routes, which causes
the routes to be stopped and restarted. All this caused a unit test to take 1-2 seconds on
average.  We try and target our unit tests to run in <1/10 second, since our unit test
suite is large (1200+ tests).

Your fix to the Introspection classes should help immensely. 

Much Thanks,
Les
                
> Camel Route Startup Performance Slow
> ------------------------------------
>
>                 Key: CAMEL-5675
>                 URL: https://issues.apache.org/jira/browse/CAMEL-5675
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 2.8.6
>         Environment: JDK 1.6
>            Reporter: Les Novell
>            Assignee: Claus Ibsen
>              Labels: performance
>             Fix For: 2.11.0
>
>         Attachments: after.png, before.png, CAMEL-5675.patch
>
>
> I am writing unit tests for Camel and found that each unit test was taking up to a second
just to create the Camel routes. That's not very long, but we have a large unit test suite
that needs to run quickly.
> I did a performance profile and found that most of the time is going to the method org.apache.camel.util.IntrospectionSupport.getProperties(Object,
Map, String). That method, then also calls IntrospectionSupport.isSetter(Method), and just
running two unit tests I saw isSettter called 2.5 million times!
> It seems to me that a cache per class of the properties would make a huge performance
improvement on Camel route building. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message