Hi JIRA ticket https://issues.apache.org/jira/browse/CAMEL-13870
We have been working on further optimize Apache Camel. And the latest step is to configure all of Camel endpoints in a faster way via direct method invocatations of the setter methods on the endpoint or its configuration class. Beforehand we did a java reflection introspection to discover the getter/setters and then match that against the uri parameters. What we have done now is to source code generate fast setters (endpoint configurer classes) that are automatic generated via camel-apt compiler plugin. Then at runtime we discover this configurer class and use it instead of the "old way". All this work is done in a separate branch with name CAMEL-13870. The code is now ready for review (if anyone want to take a peak) and then get shaped so it can be merged onto master branch. This technique is the same we already do for fast - type converters - fast EIP configurations So its just another step ahead but for the biggest of them all - all the 300+ endpoints. The next level after this is to do the same for component options (however we configure endpoints much more frequently). We have also added a BeanIntrospection SPI that captures runtime usage of java reflection, so we can use this to find bottlenecks and improve even more. In case you ask if its faster - yes. But its not as measureable. But we are talking about not using Java reflection at all, and also its invoking direct java method invocations. A very early micro benchmark test via tests/camel-jmh showed that setting just 1 option with old vs fast way was approx 40% quicker - on the log endpoint. The tests are part of the massive commit. For component developers then this is enabled out of the box if you use camel-apt. But you can turn it off by setting generateConfigurer = false in the @UriEndppoint annotation. We have done this for camel-mllp as it has some weird issue (its not developed to best standard so it actually surfaces a problem it has currently). You can also turn it off at runtime by setting basicPropertyBinding=true on component|endpoint level. -- Claus Ibsen ----------------- http://davsclaus.com @davsclaus Camel in Action 2: https://www.manning.com/ibsen2