Results 1 to 4 of 4

Thread: Performance of Spring integration is low

  1. #1

    Default Performance of Spring integration is low

    Hi,


    I am trying to send some large data using jms adapters of spring integration.

    i am achecing 45 messages (lines in the file) per second. but this is releatively very low when comparing to Mule and other ESBs. what could be the probelm.

  2. #2
    Join Date
    May 2007
    Location
    Netherlands
    Posts
    614

    Default

    Can you show the configuration? It could be that you can increase the concurrency and get an improvement that way, but without the config we can just guess.

  3. #3

    Default

    this is the configuration i am using

    <channel id="inChannel" />

    <jms-target channel="inChannel"
    connection-factory="connectionFactory" destination="inQueue" />

    <beans:bean id="connectionFactory"
    class="org.apache.activemq.ActiveMQConnectionFacto ry">
    <beansroperty name="brokerURL" value="tcp://localhost:51616" />
    </beans:bean>

    <beans:bean id="inQueue"
    class="org.apache.activemq.command.ActiveMQQueue">
    <beans:constructor-arg index="0" value="sample.queue" />
    </beans:bean>











    <channel id="inAndOutChannel" />


    <jms-source channel="inAndOutChannel"
    connection-factory="connectionFactory" destination="inQueue" />

    <beans:bean id="connectionFactory"
    class="org.apache.activemq.ActiveMQConnectionFacto ry">
    <beansroperty name="brokerURL" value="tcp://localhost:51616" />
    </beans:bean>

    <beans:bean id="inQueue"
    class="org.apache.activemq.command.ActiveMQQueue">
    <beans:constructor-arg index="0" value="sample.queue" />
    </beans:bean>

  4. #4
    Join Date
    Oct 2005
    Location
    Boston, MA
    Posts
    2,844

    Default

    One thing you might want to try is to use the <jms-gateway/> instead of the <jms-source/>. The "source" polls a JMS destination (invoking jmsTemplate.receive() each time) and thus is definitely not the best choice for performance. The "jms-source" really only makes sense for cases where you expect low message volume and want to poll rather infrequently. On the other hand, "jms-gateway" is message-driven (using Spring's MessageListener container).

    Code:
    <jms-gateway id="jmsGateway"
                 connection-factory="connectionFactory"
                 destination="inQueue"
                 request-channel="inAndOutChannel"/>
    Also note that we will be exposing more of the configuration parameters for the jms-gateway in the M5 release, so that it can be fine-tuned for performance.

Posting Permissions

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