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

Claus Ibsen commented on CAMEL-3632:
------------------------------------

Okay there is a couple of drawbacks when using async routing engine
- JMS exception listener
- JMS error handler
on the jms consumer endpoint, will not be able to kick in, as the onMessage 
method will exit when the async routing engine kick ins. So if processing of 
the exchange failed, then any unhandled exceptions is to be handled by Camel 
(using org.apache.camel.spi.ExceptionHandler, which will log the exception by 
default).

Also for a single threaded consumer the order of the processed messages will 
not be in sequence, as the async routing engine takes over processing the 
exchange. 

People can turn this on/off using the synchronous option on the JmsEndpoint. We 
could leave this option as synchronous=true by default. Then people can turn 
that off, in case they want to leverage the async routing engine.

The benefit is scalability. With this no threads will block and we can process 
a higher number of messages using the same resources. 

> JmsConsumer in InOnly non transacted mode could potential support async 
> routing engine
> --------------------------------------------------------------------------------------
>
>                 Key: CAMEL-3632
>                 URL: https://issues.apache.org/jira/browse/CAMEL-3632
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-jms
>    Affects Versions: 2.6.0
>            Reporter: Claus Ibsen
>            Assignee: Claus Ibsen
>             Fix For: 2.9.0
>
>
> The jms consumer which is not bound to send back a reply, and is *not* in 
> transacted mode, could leverage the async processing.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to