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

Christian Schneider commented on CXF-6199:
------------------------------------------

I experimentally integrated both solutions.
Scaling the number of consumers basically works. I only was not able to scale 
as much as I hoped for. Will test a bit more with it.

Using an executor does not work for many cases as we would not be able to use 
an eventual exception to control the transaction rollback / commit behaviour. 
So I think it makes sense to only implement the number of consumers. I will use 
the same JmsConfiguration setting name as in 2.7.x for it.

> Allow scalability for slow services on jms
> ------------------------------------------
>
>                 Key: CXF-6199
>                 URL: https://issues.apache.org/jira/browse/CXF-6199
>             Project: CXF
>          Issue Type: Improvement
>          Components: Transports
>    Affects Versions: 3.0.3
>            Reporter: Christian Schneider
>            Assignee: Christian Schneider
>             Fix For: 3.1.0
>
>
> Currently the CXF transport does not scale well if the service implementation 
> is slow.
> We need a facility to work with several threads.
> There are two options for this:
> 1. Allow to use more than one consumer
> 2. Use an executor in JMSDestination.onMessage
> Option 1 works well with PollingMessageListener but not with the event driven 
> MessageListener. It is also depending on the JMS provider how it scales with 
> number of consumers.
> Option 2 works in all cases but does not allow to profit from more than one 
> consumer if the provider is slow with a single consumer.
> So probably we will need both variants.



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

Reply via email to