[ 
https://issues.apache.org/jira/browse/CAMEL-15794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Kleine-Herzbruch updated CAMEL-15794:
------------------------------------------
    Description: 
CxfRsEndpoint contains this code in `_invoke*Client_`:

{code} WebClient client = cfb.createWebClient();
((CxfRsEndpoint) 
getEndpoint()).getChainedCxfRsEndpointConfigurer().configureClient(client);{code}

This means, a new client is created on every request (ok, because possibly not 
thread-safe) and then configured. The configuration step includes an 
`_AbstractSslEndpointConfigurer_` which also recreates the _SSLSocketFactory_ 
on every call, and *that* includes re-opening and re-reading configured key and 
trust stores.

Doing this on every request obviously degrades performance significantly.

  was:
CxfRsEndpoint contains this code in `_invoke*Client_`:


{{ WebClient client = cfb.createWebClient();}}
{{ ((CxfRsEndpoint) 
getEndpoint()).getChainedCxfRsEndpointConfigurer().configureClient(client);}}

 

This means, a new client is created on every request (ok, because possibly not 
thread-safe) and then configured. The configuration step includes an 
`_AbstractSslEndpointConfigurer_` which also recreates the _SSLSocketFactory_ 
on every call, and *that* includes re-opening and re-reading configured key and 
trust stores.

Doing this on every request obviously degrades performance significantly.


> CxfRsEndpoint recreates SSL context for each message
> ----------------------------------------------------
>
>                 Key: CAMEL-15794
>                 URL: https://issues.apache.org/jira/browse/CAMEL-15794
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-cxfrs
>    Affects Versions: 3.6.0
>            Reporter: Jens Kleine-Herzbruch
>            Priority: Major
>              Labels: performance
>
> CxfRsEndpoint contains this code in `_invoke*Client_`:
> {code} WebClient client = cfb.createWebClient();
> ((CxfRsEndpoint) 
> getEndpoint()).getChainedCxfRsEndpointConfigurer().configureClient(client);{code}
> This means, a new client is created on every request (ok, because possibly 
> not thread-safe) and then configured. The configuration step includes an 
> `_AbstractSslEndpointConfigurer_` which also recreates the _SSLSocketFactory_ 
> on every call, and *that* includes re-opening and re-reading configured key 
> and trust stores.
> Doing this on every request obviously degrades performance significantly.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to