Hello All,

We are using the mq jms settings like this:

<!-- Queue Manager Connection factory(s) -->
  <bean id="wmqConnectionFactory" 
class="com.ibm.mq.jms.MQQueueConnectionFactory">
    <property name="CCDTURL">
      <bean class="com.tgt.tcom.il.financial.MQConnectionFactoryUtil"
                           factory-method="convert">
        <argument value="${financial.WMQ.CCDTfile_Stage}" />
      </bean>
    </property>
    <property name="queueManager" value="${financial.WMQ.QMName_Stage3}" />

  </bean>
  <!-- Cache Connection Factory -->

  <bean id="cachingWmqConnectionFactory"
              
class="org.springframework.jms.connection.CachingConnectionFactory"
              destroy-method="destroy">
    <property name="targetConnectionFactory" ref="wmqConnectionFactory" />
    <property name="cacheConsumers" value="true" />
    <property name="reconnectOnException" value="true" />
    <property name="sessionCacheSize" value="10" />
  </bean>

  <!--Spring Transaction Manager -->

  <bean id="wmqTransactionManager"
              class="org.springframework.jms.connection.JmsTransactionManager">
    <property name="connectionFactory" ref="wmqConnectionFactory" />
  </bean>

  <!--JMS components used for Endpoints -->
  <bean id="wmq-qm" class="org.apache.camel.component.jms.JmsComponent">
    <property name="connectionFactory" ref="cachingWmqConnectionFactory" />
    <property name="transactionManager" ref="wmqTransactionManager" />
    <property name="transacted" value="false" />
    <property name="cacheLevelName" value="CACHE_AUTO" />
    <property name="concurrentConsumers" value="40" />
    <property name="maxConcurrentConsumers" value="60" />
  </bean>


My concurrentConsumers is 40 and max is 60. But issue is it never reaches even 
40 and messages are consumed slowly. Ie my queue will have 5K messages but 
threads instantiated will reach max 25-33 range.

Any option to force min 40 threads at startup itself?

Thanks and Regards,

Vanshul Chawla

Reply via email to