Results 1 to 1 of 1

Thread: How fast can be ActiveMQ?

  1. #1
    Join Date
    Mar 2010
    Location
    Tallinn, Estonia
    Posts
    25

    Unhappy How fast can be ActiveMQ?

    Hello,

    My Spring Integration application uses ActiveMQ as JMS server. There are plenty of "jms:message-driven-channel-adapter" and "jms:channel" in my application, which send the messages to ActiveMQ and get the messages from ActiveMQ.

    Typical definitions of JMS channels and adapters are:

    Code:
    <jms:channel id="updateCreditCardChannel" queue="creditCardQueue" selector="ACTION = 'UPDATE'" transaction-manager="transactionManager" auto-startup="true" concurrency="10-50" receive-timeout="5000" acknowledge="transacted" message-converter="userMessageConverter" />
    and

    Code:
    <jms:message-driven-channel-adapter id="notificationAdapter" channel="processJSONNotificationChannel" destination="notificationQueue" transaction-manager="transactionManager" selector="originator = 'SS' AND eventCode = 'AUTHORISATION'" auto-startup="true" error-channel="errorChannel" header-mapper="activeMQRedeliveryCountMapper" acknowledge="transacted" max-concurrent-consumers="10" />
    Here is definition of JMS connection factory:

    Code:
        <bean id="connectionFactory" class="org.springframework.jms.connection.CachingConnectionFactory">
          <constructor-arg>
            <bean class="org.apache.activemq.ActiveMQConnectionFactory">
              <property name="brokerURL" value="${jms.broker.url}" />
              <property name="redeliveryPolicy">
                <bean class="org.apache.activemq.RedeliveryPolicy">
                  <property name="maximumRedeliveries" value="10" />
                  <property name="initialRedeliveryDelay" value="1000" />
                  <property name="useExponentialBackOff" value="true" />
                  <property name="backOffMultiplier" value="5" />
                </bean>
              </property>
            </bean>
          </constructor-arg>
        </bean>
    ActiveMQ is running locally on my developer machine or locally on development server.

    The problem is that delivery of the messages is randomly slow. The message sent from one part of the application can be delivered to the channel or right now or in couple of minutes, or only on next startup of the processing application, or next startup of ActiveMQ server.

    What can be a reason for slow delivery?

    ActiveMQ version is 1.5.6
    Spring Integration version 2.1.0.RELEASE
    Last edited by igor.bljahhin; May 18th, 2012 at 06:45 AM.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •