Thanks Christian. That seems to have improved performance.

I had to remove the JMS user/pass from the UserCredentials Factory as Spring 
would complain that "SingleConnectionFactory does not support custom username 
and password"

      <bean id="jmsUserCredentialsFactoryAdapter" 
class="org.springframework.jms.connection.UserCredentialsConnectionFactoryAdapter">
            <property name="targetConnectionFactory" 
ref="cachedConnectionFactory" />
            <!--
            <property name="username" value="${jms.username}" />
            <property name="password" value="${jms.password}" />
            -->
      </bean>


Please consider the environment before printing this email.
From: Christian Schneider [via Camel] 
[mailto:ml-node+3334250-1605032308-144...@n5.nabble.com]
Sent: Monday, 10 January 2011 9:31 AM
To: Damian Harvey
Subject: Re: How to improve Camel MQ performance

Hi Damian,

you could try to wrap your connectionfactory in a spring
CachingConnectionFactory :
http://static.springsource.org/spring/docs/2.5.x/api/org/springframework/jms/connection/CachingConnectionFactory.html

It has several settings that could speed up camel jms.

Christian


Am 09.01.2011 23:17, schrieb damianharvey:

>
> My Spring JMS configuration (note that I have commented out the transaction 
> handling to improve performance):
>
>        <!-- Beans to create the MQ endpoint using JMS -->
>
>        <bean 
> class="org.springframework.beans.factory.config.MethodInvokingFactoryBean" 
> p:staticMethod="com.ibm.mq.MQEnvironment.addConnectionPoolToken" />
>
>        <bean id="mqConnectionFactory" 
> class="com.ibm.mq.jms.MQQueueConnectionFactory">
>              <property name="hostName" value="${mq.host}" />
>              <property name="port" value="${mq.port}" />
>              <property name="queueManager" value="${mq.queueManager}" />
>              <property name="transportType" value="1" />
>              <property name="channel" value="SYSTEM.DEF.SVRCONN" />
>        </bean>
>
>        <bean id="jmsUserCredentialsFactoryAdapter" 
> class="org.springframework.jms.connection.UserCredentialsConnectionFactoryAdapter">
>              <property name="targetConnectionFactory" 
> ref="mqConnectionFactory" />
>              <property name="username" value="${jms.username}" />
>              <property name="password" value="${jms.password}" />
>        </bean>
>
>        <!-- bean id="jtm" 
> class="org.springframework.jms.connection.JmsTransactionManager102">  
> <constructor-arg index="0" ref="jmsUserCredentialsFactoryAdapter" />  
> <constructor-arg
>              index="1" value="false" />  </bean -->
>
>        <bean id="jc" class="org.apache.camel.component.jms.JmsConfiguration">
>              <constructor-arg index="0" 
> ref="jmsUserCredentialsFactoryAdapter" />
>        </bean>
>
>        <bean id="mq" class="org.apache.camel.component.jms.JmsComponent">
>              <property name="configuration" ref="jc" />
>              <property name="acknowledgementModeName" 
> value="AUTO_ACKNOWLEDGE" />
>              <property name="transacted" value="false" />
>              <!-- property name="transactionManager" ref="jtm" / -->
>        </bean>
>
>        <bean id="auditRoute" 
> class="com.aon.camel.routes.impl.AuditRouteBuilder">
>              <property name="jmsComponent" ref="mq" />
>        </bean>
>
>        <bean id="jmsRoute" 
> class="com.aon.camel.routes.impl.JmsRouterRouteBuilder">
>              <property name="jmsComponent" ref="mq" />
>              <property name="requestQueue" value="${jms.requestQueue}" />
>              <property name="requestQueueOps" value="${jms.requestQueueOps}" 
> />
>              <property name="replyQueue" value="${jms.replyQueue}" />
>        </bean>
>
>
> Damian Harvey | Aon Australia/Pacific
>
> Level 31, 201 Kent Street Sydney NSW 2000
> t: +61292537000 | f: +61292537952
> e: [hidden 
> email]</user/SendEmail.jtp?type=node&node=3334250&i=0><mailto:[hidden 
> email]</user/SendEmail.jtp?type=node&node=3334250&i=1>>
>
> Please consider the environment before printing this email.
> From: Christian Schneider [via Camel] [mailto:[hidden 
> email]</user/SendEmail.jtp?type=node&node=3334250&i=2>]
> Sent: Monday, 10 January 2011 9:14 AM
> To: Damian Harvey
> Subject: Re: How to improve Camel MQ performance
>
> Can you post your camel jms and configuration?
>
> Christian
>
>
> Am 09.01.2011 22:43, schrieb damianharvey:
>
>> Does anyone have any tips on how to configure Camel to be more performant on
>> WebSphere MQ? I haven't seen any settings to allow MQ to use connection
>> pooling and I'm finding that it isn't performing well under load - I suspect
>> due to the overhead of opening and closing connections (it's about twice as
>> slow as the same service over HTTP). I have set the JMS consumer to have 30
>> concurrent consumers and this helped a little.
>>
>> I have tried adding the following line to the Spring configuration to no
>> avail:
>>
>> <bean
>> class="org.springframework.beans.factory.config.MethodInvokingFactoryBean"
>> p:staticMethod="com.ibm.mq.MQEnvironment.addConnectionPoolToken" />
>>
>> Is there anything else that I can do? Is anyone using MQ with Camel in a
>> high performance environment?
>>
>> Thanks,
>>
>> Damian.
> --
> ----
> http://www.liquid-reality.de
>
>
> ________________________________
> View message @ 
> http://camel.465427.n5.nabble.com/How-to-improve-Camel-MQ-performance-tp3334208p3334238.html<http://camel.465427.n5.nabble.com/How-to-improve-Camel-MQ-performance-tp3334208p3334238.html?by-user=t>
>
>
> ________________________________
>
> This communication (and any attachments) is directed in confidence to the 
> addressee(s) listed above, and may not otherwise be distributed, copied or 
> used. The contents of this communication may also be subject to privilege, 
> and all rights to that privilege are expressly claimed and not waived. If you 
> have received this communication in error, please notify us by reply e-mail 
> or by telephone and delete this communication (and any attachments) without 
> making a copy.
>
> Before opening or using attachments, you should check them for viruses and 
> defects. We do not accept liability in connection with computer virus, data 
> corruption, delay, interruption, unauthorised access or unauthorised 
> amendment.
>

--
----
http://www.liquid-reality.de


________________________________
View message @ 
http://camel.465427.n5.nabble.com/How-to-improve-Camel-MQ-performance-tp3334208p3334250.html
To unsubscribe from How to improve Camel MQ performance, click 
here<http://camel.465427.n5.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=3334208&code=RGFtaWFuLmhhcnZleUBhb24uY29tLmF1fDMzMzQyMDh8LTIwNDE4MDIxMzg=>.

________________________________

This communication (and any attachments) is directed in confidence to the 
addressee(s) listed above, and may not otherwise be distributed, copied or 
used. The contents of this communication may also be subject to privilege, and 
all rights to that privilege are expressly claimed and not waived. If you have 
received this communication in error, please notify us by reply e-mail or by 
telephone and delete this communication (and any attachments) without making a 
copy.

Before opening or using attachments, you should check them for viruses and 
defects. We do not accept liability in connection with computer virus, data 
corruption, delay, interruption, unauthorised access or unauthorised amendment.

-- 
View this message in context: 
http://camel.465427.n5.nabble.com/How-to-improve-Camel-MQ-performance-tp3334208p3334279.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to