camel-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jonathan Anstey (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CAMEL-9003) Allow multiple producers with differing request timeouts
Date Thu, 23 Jul 2015 17:59:04 GMT

    [ 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)

Mime
View raw message