Announcement Announcement Module
No announcement yet.
server session concurrency problem Page Title Module
Move Remove Collapse
Conversation Detail Module
  • Filter
  • Time
  • Show
Clear All
new posts

  • server session concurrency problem

    Hi, use the ServerSessionMessageListenerContainer to asynchrone consume messages from a queue. Like this:

    <bean id="outputDispatcher" class="org.springframework.jms.listener.serversess ion.ServerSessionMessageListenerContainer">
    <property name="serverSessionFactory">
    <bean class="org.springframework.jms.listener.serversess ion.CommonsPoolServerSessionFactory">
    <property name="maxSize" value="10"/>
    <property name="taskExecutor">
    <bean class="org.springframework.scheduling.concurrent.C oncurrentTaskExecutor">
    <property name="concurrentExecutor">
    <bean class="org.springframework.scheduling.concurrent.T hreadPoolTaskExecutor">
    <property name="maxPoolSize" value="10"/>
    <property name="destination" ref="outputQueue"/>
    <property name="messageListener" ref="outputDispatcherProxy"/>
    <property name="connectionFactory" ref="singleConnectionFactory"/>

    If the queue has e.g. 1000 messages, the ServerSessionMessageListenerContainer consume only with 1 thread from this queue. Why doesn't the threadpool increase his size to maxSize and consume with 10 threads concurrently?

    Is my configuration wrong, or anything is missing?

    Configuration: Spring 2.0M1, ActiveMQ 3.2.1


  • #2
    It is possible that this is bug in the ServerSessionMessageListenerContainer, because ActiveMQ should work fine with this, when I use Jencks.