camel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Claus Ibsen (JIRA)" <j...@apache.org>
Subject [jira] Commented: (CAMEL-3123) Performance/scalability issue for converter lookup
Date Wed, 15 Sep 2010 08:03:42 GMT

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

Claus Ibsen commented on CAMEL-3123:
------------------------------------

Can you post a small sample app / unit test which causes this on your system?

> Performance/scalability issue for converter lookup
> --------------------------------------------------
>
>                 Key: CAMEL-3123
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-3123
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 2.4.0
>         Environment: Camel 2.4.0 on apache karaf 2.0.0
>            Reporter: Stephan Siano
>
> In a simple HTTP->HTTP proxy scenario (whith a Jetty or a servlet endpoint, that does
not matter) I observe a very severe performance regression between Camel 2.2.0 (as in servicemix
4.2) and camel 2.4.0 running on a apache karaf 2.0.0 OSGi stack. On the same hardware I get
a throughput of 3500 messages per second with Camel 2.2.0, but only 210 messages per second
on Camel 2.4.0 (both servlet->HTTP). If I replace the http endpoint with a log endpoint
the throughput will be about 1500 messages per second in both cases.
> I have done some profiling for this: The active CPU times as shown in the profiler remain
approximately the same for both versions, however if I monitor wait times, I get very long
wait times for org.apache.camel.impl.DefaultMessage.getHeader(java.lang.String,java.lang.Class)
calls. If I break this down I see the java.beans.PropertyEditorManager.findEditor(java.lang.Class)
call in org.apache.camel.impl.converter.PropertyEditorTypeConverter.convertTo(java.lang.Class,java.lang.Object).
The findEditor() method is synchronized and initializes some class loading which takes some
time.
> Why is it necessary to instantiate the type converter for each message?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message