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

Claus Ibsen edited comment on CAMEL-16213 at 2/22/21, 8:39 AM:
---------------------------------------------------------------

TODO: a *DONE*
TODO: camel-atom
TODO: all the aws2 components
TODO: b *DONE*
TODO: c *DONE*
TODO: camel-cxf
TODO: d *DONE*
TODO: e *DONE*
TODO: camel-flatpack
TODO: f *DONE*
TODO: camel-grpc
TODO: g *DONE*
TODO: h *DONE*
TODO: camel-irc
TODO: i *DONE*
TODO: camel-jetty
TODO: camel-jms
TODO: j *DONE*
TODO: camel-kafka
TODO: k *DONE*
TODO: l *DONE*
TODO: m *DONE*
TODO: camel-netty
TODO: camel-netty-http
TODO: n *DONE*
TODO: o *DONE*


was (Author: davsclaus):
TODO: a *DONE*
TODO: camel-atom
TODO: all the aws2 components
TODO: b *DONE*
TODO: c *DONE*
TODO: camel-cxf
TODO: d *DONE*
TODO: e *DONE*
TODO: camel-flatpack
TODO: f *DONE*
TODO: camel-grpc
TODO: g *DONE*
TODO: h *DONE*
TODO: camel-irc
TODO: i *DONE*
TODO: camel-jetty
TODO: camel-jms
TODO: j *DONE*
TODO: camel-kafka
TODO: k *DONE*
TODO: l *DONE*
TODO: m *DONE*

> camel-core - Exchange pooling
> -----------------------------
>
>                 Key: CAMEL-16213
>                 URL: https://issues.apache.org/jira/browse/CAMEL-16213
>             Project: Camel
>          Issue Type: New Feature
>          Components: came-core
>            Reporter: Luca Burgazzoli
>            Assignee: Claus Ibsen
>            Priority: Major
>             Fix For: 3.9.0
>
>
> By default a brand new exchange is created for each message received by a 
> component and that's usually fine but for very simple routes, like those 
> created by the camel-kafka-connector or the Kantive Sources in camel-k it may 
> be useful to have an option to create pools of reusable exchanges as:
> - exchanges are short living objects and routes are simple 
> - exchanges are heavy (multiple maps for properties and headers)
> - camel-kafka-connector and knative sources are likely to receive the same 
> messages type, with the same set of headers so the maps allocated by the 
> exchange can safely be recycled to reduce allocations and resizing
> In addition to the reason above, we can leverages exchange pooling to:
> - implement back pressure driven by the resource constraints to be sure we 
> don't exceed resources consumption and we don't degrade the the service (i.e. 
> long GC pause) 
> - have a way to create tailored exchanges, i.e. by providing an exchange that 
> does not have in/out but just in  
> An example of fast and efficient ASL2 licensed object pooling: 
> https://github.com/chrisvest/stormpot



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

Reply via email to