Hi all,

I've been scouring the internet and forums trying to find someone else who
had this problem but was unsuccessful. My problem is that my consumer
running on my 5.6.0 version is consuming extremely slow off a virtual
topic(about 2 messages every second). However, if I copy over the
activemq.xml and camel xml over to a 5.5.1 version I have running, it
consumes them off the same virtual topic much much faster(100's every
second). I honestly have no idea why it is doing this. Ive checked the logs
and it's not throwing any error or warnings, and I've tried everything from
modifying the prefetch limit, turning off flow controller, trying to add
concurrentConsumers to the connection, and everything else mentioned on
http://activemq.apache.org/slow-consumer-handling.html and
http://activemq.apache.org/slow-consumers.html. I've tried restarting both
brokers multiple times and wiping out the kahad db dirs as well. I'm at a
loss of what to try next, thanks!

activemq.xml

<beans
  xmlns="http://www.springframework.org/schema/beans";
  xmlns:amq="http://activemq.apache.org/schema/core";
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
  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";>

    
    <bean
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="locations">
            <value>file:${activemq.base}/conf/credentials.properties</value>
                </property>
    </bean>

    
    <broker xmlns="http://activemq.apache.org/schema/core";
brokerName="localhost" useJmx="true" destroyApplicationContextOnStop="true">

        <destinationPolicy>
                <policyMap>
                <policyEntries>
                    
                    <policyEntry queue=">" producerFlowControl="false"
memoryLimit="1gb"/>
                    <policyEntry topic=">" producerFlowControl="false"
memoryLimit="1gb">
                        <dispatchPolicy>
                            
                            <strictOrderDispatchPolicy/>
                        </dispatchPolicy>
                        <subscriptionRecoveryPolicy>
                            
                            <lastImageSubscriptionRecoveryPolicy/>
                        </subscriptionRecoveryPolicy>
                    </policyEntry>
                </policyEntries>
            </policyMap>
        </destinationPolicy>
        
        <jmsBridgeConnectors>
          <jmsTopicConnector outboundClientId="host560"
localClientId="host560" 
outboundTopicConnectionFactory="#remoteFactoryConnection">
              <inboundTopicBridges>
                     <inboundTopicBridge
inboundTopicName="VirtualTopic.QSYNCQA" consumerName="host560"/>
              </inboundTopicBridges>
           </jmsTopicConnector>
        </jmsBridgeConnectors>

        <managementContext>
            <managementContext createConnector="false"/>
        </managementContext>

        <persistenceAdapter>
            <kahaDB directory="${activemq.base}/data/dynamic-broker1/kahadb"
indexWriteBatchSize="1000" enableIndexWriteAsync="true"
enableJournalDiskSyncs="false"/>
                </persistenceAdapter>
                <plugins>
                          <loggingBrokerPlugin logAll="true" 
logConnectionEvents="false"/>
                          <traceBrokerPathPlugin/>
                </plugins>

        <sslContext>
            <sslContext keyStore="file:${activemq.base}/conf/broker.ks" 
              keyStorePassword="password"
trustStore="file:${activemq.base}/conf/broker.ts" 
              trustStorePassword="password"/>
        </sslContext>
        
          <systemUsage>
            <systemUsage>
                <memoryUsage>
                    <memoryUsage limit="3 gb"/>
                </memoryUsage>
                <storeUsage>
                    <storeUsage limit="3 gb"/>
                </storeUsage>
                <tempUsage>
                    <tempUsage limit="100 mb"/>
                </tempUsage>
            </systemUsage>
        </systemUsage>

        <transportConnectors>
            <transportConnector name="openwire" uri="tcp://0.0.0.0:61617"
discoveryUri="multicast://default"/>
        </transportConnectors>

    </broker>

    <import resource="jetty.xml"/>
        <import resource="camel.xml"/>
        
        <bean id="remoteFactoryConnection"
class="org.apache.activemq.ActiveMQConnectionFactory">
                <property name="brokerURL" 
value="failover:(tcp://ip-address:61616)" />
        </bean>

</beans>

------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------

camel.xml

<beans
   xmlns="http://www.springframework.org/schema/beans";  
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
   xsi:schemaLocation="http://camel.apache.org/schema/spring
http://camel.apache.org/schema/spring/camel-spring.xsd
   http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd";>
 
        <camelContext  xmlns="http://camel.apache.org/schema/spring";>
        <route>
            <description>Send to USWESTQA</description>
            <from uri="activemq:queue:Consumer.TEST.VirtualTopic.QSYNCQA"/>
                        <to uri="activemq:topic:WEST.QA" pattern="InOnly"/>
        </route>
        <route>
            <description>Queue USWEST QA</description>
            <from
uri="activemq:topic:WEST.QA?clientId=25&amp;durableSubscriptionName=DEVf"/>
                        <to uri="activemq:queue:testing" pattern="InOnly"/>
    </route>
    </camelContext>


    
    <bean id="activemq"
class="org.apache.activemq.camel.component.ActiveMQComponent" >
                <property name="configuration">
                <bean class="org.apache.camel.component.jms.JmsConfiguration">
                        <property name="connectionFactory">
                <bean class="org.apache.activemq.ActiveMQConnectionFactory">
                <property name="brokerURL"
value="vm://localhost?create=false&amp;waitForStart=10000" />
                <property name="userName" value="${activemq.username}"/>
                <property name="password" value="${activemq.password}"/>
                </bean>
                </property>
                </bean>
                </property>
    </bean>
</beans>



--
View this message in context: 
http://activemq.2283324.n4.nabble.com/5-6-0-Slow-Virtual-Topic-Consumption-tp4656491.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to