activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Timothy Bish <tabish...@gmail.com>
Subject Re: Upgrade to 5.6.0, JMS bridge dead slow
Date Thu, 02 Aug 2012 22:17:50 GMT
On Fri, 2012-08-03 at 00:08 +0200, Jakob Ericsson wrote: 
> Hi,
> 
> We have a small activemq setup that uses the JMSBridge against a Sonic
> MQ. This works fine in production where we use 5.5.1 version.
> 
> I am now testing upgrade to 5.6.0 because there where some bugs I
> wanted fixed (specially
> https://issues.apache.org/jira/browse/AMQ-3137).
> 
> But the JMSBridge outboundQueueBridge in 5.6.0 is dead slow.
> 
> I have test that enqueues 1000 messages with a constant throughput
> timer at 600 msgs per minute. Quite slow.
> 
> When running with 5.5.1 my test setup have no problem deliver 600 msg
> per minute to the Sonic MQ. The queuesize never increase above 0. So
> the bridge delivered messages with at least 600 msgs per minute.
> 
> But when I run with 5.6.0 (maven build, only changed the version) it
> took over 4 minutes to deliver all messages and the queue size went up
> to 600 msgs compared to 0 with 5.5.1.
> 
> Could this be a performance bug in 5.6.0?
> Or have I configured it wrong in 5.6.0?
> 
> 
>         <bean id="sonicConnectionFactory"
> class="progress.message.jclient.QueueConnectionFactory">
>                 <property name="connectionURLs" value="${icc.brokerurl}" />
>                 <property name="defaultUser" value="${icc.username}" />
>                 <property name="defaultPassword" value="${icc.password}" />
>                 <property name="loadBalancing" value="false" />
>                 <property name="faultTolerant" value="true" />
>                 <property name="faultTolerantReconnectTimeout" value="30" />
>                 <property name="initialConnectTimeout" value="30" />
>                 <property name="maxDeliveryCount" value="5" />
>                 <property name="reconnectTimeout" value="0" />
>                 <property name="reconnectInterval" value="10" />
>                 <property name="monitorInterval" value="30" />
>         </bean>
> 
> 
> 
>         <amq:broker useJmx="true" brokerName="${activemq.brokername:test-mq}"
> 
> dataDirectory="${activemq.datadirectory:D:\activemq-data}"
> persistent="true">
> 
>                 <amq:jmsBridgeConnectors>
>                         <amq:jmsQueueConnector name="Sonic-Bridge"
> 
> outboundQueueConnectionFactory="#sonicConnectionFactory">
>                                 <amq:outboundQueueBridges>
>                                         <amq:outboundQueueBridge
> outboundQueueName="queue1" />
> 
>                                 </amq:outboundQueueBridges>
>                         </amq:jmsQueueConnector>
> 
>                 </amq:jmsBridgeConnectors>
> 
>                 <amq:managementContext>
>                         <amq:managementContext createConnector="false" />
>                 </amq:managementContext>
> 
> 
>                 <amq:transportConnectors>
>                         <amq:transportConnector name="humble-transport"
>                                 uri="${local.host}"
> discoveryUri="${multicastGroup}"
>                                 updateClusterClients="true"
> rebalanceClusterClients="true"
>                                 updateClusterClientsOnRemove="true" />
>                 </amq:transportConnectors>
>         </amq:broker>
> 
> Cheers,
> Jakob

There was a bug introduced in the refactored bridge code that is
triggering a one-second delay on each send, you can use the latest 5.7
SNAPSHOT builds to avoid this.  

-- 
Tim Bish
Sr Software Engineer | FuseSource Corp
tim.bish@fusesource.com | www.fusesource.com
skype: tabish121 | twitter: @tabish121
blog: http://timbish.blogspot.com/


Mime
View raw message