camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ioannis Canellos <ioca...@gmail.com>
Subject Re: Performance issues when using camel-activemq and transactions.
Date Tue, 07 Dec 2010 13:46:05 GMT
I will do so.

I will also check the tx scenarios described in the "Camel in Action".


On Tue, Dec 7, 2010 at 3:36 PM, Claus Ibsen <claus.ibsen@gmail.com> wrote:

> Check some of the TX unit tets in camel-jms and compare notes.
>
>
> On Tue, Dec 7, 2010 at 2:20 PM, Ioannis Canellos <iocanel@gmail.com>
> wrote:
> > Hi Claus,
> >
> > thanks for your response.
> >
> > I had the luck to watch that webinar and I also have the slides, the do
> help
> > in increasing the overall performance. But when I set transaction=true on
> > the activemq component, the performance can degrade form 2000 msg/sec to
> 5
> > msg/sec.
> >
> > Regarding the number of connections, even if I increase it to 10, 20 or
> more
> > I don't see any difference at all.
> >
> > I feel that the problem is in my camel configuration (not activemq) since
> I
> > didn't have issues when I was use servicemix and activemq.
> >
> > Thanks again!
> >
> > On Tue, Dec 7, 2010 at 3:08 PM, Claus Ibsen <claus.ibsen@gmail.com>
> wrote:
> >
> >> Ask at AMQ forum as its generally how to optimize and setup AMQ.
> >>
> >> Also check out maybe some of the webinars by Rob Davies on advanced
> >> and high performance AMQ stuff
> >> The webinars is avail at fusesource website.
> >>
> >> And it looks like you only got 1 connection in your pool?
> >> maxConnections=1
> >>
> >>
> >>
> >> On Mon, Nov 29, 2010 at 10:38 AM, Ioannis Canellos <iocanel@gmail.com>
> >> wrote:
> >> > I am using camel 2.5.0 and activemq 5.4.0 to create a simple route of
> the
> >> > form dataset -> activemq:queue.in -> activemq:queue.out -> dataset.
> >> > All are working fine and I the performance is more than 1K
> messages/sec.
> >> >
> >> > However if I set transactions=true on the activemq component
> >> configuration,
> >> > then I experience serious performance issues (5 messages/sec).
> >> >
> >> > I am testing using camel:run maven plugin. My configuration is the
> >> > following:
> >> >
> >> > <beans
> >> >        xmlns="http://www.springframework.org/schema/beans"
> >> >        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> >> >        xmlns:amq="http://activemq.apache.org/schema/core"
> >> >        xmlns:camel="http://camel.apache.org/schema/spring"
> >> >        xmlns:context="http://www.springframework.org/schema/context"
> >> >        xmlns:aop="http://www.springframework.org/schema/aop"
> >> >        xsi:schemaLocation="
> http://www.springframework.org/schema/beans
> >> > http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
> >> >        http://activemq.apache.org/schema/core
> >> > http://activemq.apache.org/schema/core/activemq-core.xsd
> >> >        http://www.springframework.org/schema/context
> >> > http://www.springframework.org/schema/context/spring-context-3.0.xsd
> >> >        http://www.springframework.org/schema/aop
> >> > http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
> >> >        http://camel.apache.org/schema/spring
> >> > http://camel.apache.org/schema/spring/camel-spring.xsd">
> >> >
> >> >    <!-- Allows us to use system properties as variables in this
> >> > configuration file -->
> >> >    <bean
> >> >
> >>
> class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>
> >> >
> >> >    <!-- ActiveMQ Broker -->
> >> >    <broker id="broker" xmlns="http://activemq.apache.org/schema/core"
> >> > brokerName="localhost" dataDirectory="data"
> >> >            useJmx="true" persistent="true" advisorySupport="false">
> >> >        <destinationPolicy>
> >> >            <policyMap>
> >> >                <policyEntries>
> >> >                    <policyEntry queue=">" producerFlowControl="false"
> >> > optimizedDispatch="true">
> >> >                        <pendingQueuePolicy>
> >> >                            <vmQueueCursor/>
> >> >                        </pendingQueuePolicy>
> >> >                    </policyEntry>
> >> >                </policyEntries>
> >> >            </policyMap>
> >> >        </destinationPolicy>
> >> >
> >> >        <persistenceAdapter>
> >> >            <kahaDB directory="data/kahadb"
> enableIndexWriteAsync="true"/>
> >> >        </persistenceAdapter>
> >> >
> >> >        <transportConnectors>
> >> >            <transportConnector name="nio" uri="nio://0.0.0.0:61616"/>
> >> >        </transportConnectors>
> >> >    </broker>
> >> >
> >> >    <!-- Camel Context -->
> >> >    <camelContext xmlns="http://camel.apache.org/schema/spring"
> >> > id="messaging" depends-on="broker">
> >> >        <route>
> >> >            <from uri="dataset:loadtest?produceDelay=-1"/>
> >> >            <to uri="activemq:queue:queue.in"/>
> >> >        </route>
> >> >    </camelContext>
> >> >
> >> >    <!-- Camel Components -->
> >> >    <bean id="activemq"
> >> > class="org.apache.activemq.camel.component.ActiveMQComponent">
> >> >        <property name="connectionFactory"
> ref="pooledConnectionFactory"/>
> >> >        <!--property name="transacted" value="true"/>
> >> >        <property name="transactionManager" ref="transactionManager"/>
> >> >        <property name="transactionTimeout" value="300000"/-->
> >> >        <property name="acknowledgementModeName"
> >> value="AUTO_ACKNOWLEDGE"/>
> >> >        <property name="cacheLevelName" value="CACHE_AUTO"/>
> >> >    </bean>
> >> >
> >> >
> >> >    <bean id="connectionFactory"
> >> > class="org.apache.activemq.ActiveMQConnectionFactory">
> >> >        <property name="brokerURL" value="nio://127.0.0.1:61616"/>
> >> >        <property name="useAsyncSend" value="true"/>
> >> >    </bean>
> >> >
> >> >    <bean id="pooledConnectionFactory"
> >> > class="org.apache.activemq.pool.PooledConnectionFactory">
> >> >        <property name="connectionFactory" ref="connectionFactory"/>
> >> >        <property name="maxConnections" value="1"/>
> >> >        <property name="maximumActive" value="500"/>
> >> >    </bean>
> >> >
> >> >    <!-- DataSet -->
> >> >    <bean id="loadtest"
> >> > class="org.apache.camel.component.dataset.SimpleDataSet">
> >> >        <property name="size" value="100000"/>
> >> >    </bean>
> >> >
> >> >    <!-- Transaction Manager -->
> >> >    <bean id="transactionManager"
> >> > class="org.jencks.factory.TransactionManagerFactoryBean"/>
> >> > </beans>
> >> >
> >> >
> >> > --
> >> > *Ioannis Canellos*
> >> > http://iocanel.blogspot.com
> >> > Integration Engineer @ Upstream S.A. <http://www.upstreamsystems.com>
> >> >
> >>
> >>
> >>
> >> --
> >> Claus Ibsen
> >> -----------------
> >> FuseSource
> >> Email: cibsen@fusesource.com
> >> Web: http://fusesource.com
> >> Twitter: davsclaus
> >> Blog: http://davsclaus.blogspot.com/
> >> Author of Camel in Action: http://www.manning.com/ibsen/
> >>
> >
> >
> >
> > --
> > *Ioannis Canellos*
> > http://iocanel.blogspot.com
> >
> > Integration Engineer @ Upstream S.A. <http://www.upstreamsystems.com>
> >
>
>
>
> --
> Claus Ibsen
> -----------------
> FuseSource
> Email: cibsen@fusesource.com
> Web: http://fusesource.com
> Twitter: davsclaus
> Blog: http://davsclaus.blogspot.com/
> Author of Camel in Action: http://www.manning.com/ibsen/
>



-- 
*Ioannis Canellos*
http://iocanel.blogspot.com

Integration Engineer @ Upstream S.A. <http://www.upstreamsystems.com>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message