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

Jonathan Anstey commented on CAMEL-9003:
----------------------------------------

I was assuming that modifying the channel pipeline would be a really expensive 
thing to do but in reality over a lot of messages the difference is minimal. It 
was only slightly slower to use a header over 100K messages:

100000 messages with timeout set via header: 27101ms.
100000 messages with timeout set via uri: 26615ms.

After http://git-wip-us.apache.org/repos/asf/camel/commit/b587d402 you can now 
use a CamelNettyRequestTimneout header to override this setting.

> Allow multiple producers with differing request timeouts
> --------------------------------------------------------
>
>                 Key: CAMEL-9003
>                 URL: https://issues.apache.org/jira/browse/CAMEL-9003
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-netty, camel-netty4
>            Reporter: Jonathan Anstey
>            Assignee: Jonathan Anstey
>             Fix For: 2.16.0, 2.15.3
>
>
> User reported that Camel is 'caching' the timeout setting on outgoing netty 
> calls, so the first call out it would be using the correct timeout setting, 
> but subsequent outgoing calls with different timeout settings Camel would 
> still use the same initial timeout given instead of the new one.
> So usually you would override these kind of things in headers for each 
> request... but you can't just change the timeout value for each call in 
> netty, you'd have to reconstruct the entire channel pipeline... which would 
> be a bit expensive :-) 
> Solution is to add requestTimeout to key for ProducerCache so we get distinct 
> producers with different requestTimeout values.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to