Hello to all,

My last chance, I've spend last hours to make it work, modifying a lot of
parameters but without any success ...

We have a web application using Spring 2.5.4 and ActiveMQ which is working
very well, with ajax access etc ... and we would like to upgrade to 5.1.0.
The configuration is very simple, no persistance and we use only temporary
topics.
Works well also but eating memory, and we finish by a beautiful "ActiveMQ
java.lang.OutOfMemoryError: Java heap space"

Does anybody has an idea of what we forgot to change ? or what is needed to
be changed when upgrading from 4.1 to 5.1 ?

Thanks for any answer or any pointer to documentation / forum I may have
missed ...

Jean-Yves

Here is the spring config :
<beans>
    <bean id="brokerContainer"
        class="org.apache.activemq.xbean.BrokerFactoryBean">
        <property name="config" value="classpath:activemq.xml" />
    </bean>
    <bean id="wbmPrefetchPolicy"
class="org.apache.activemq.ActiveMQPrefetchPolicy" >
       <property name="topicPrefetch" value="10000"></property>
    </bean>
    <!-- JMS ConnectionFactory to use -->
    <bean id="jmsFactory"
        class="org.apache.activemq.ActiveMQConnectionFactory">
        <property name="brokerURL"
            value="vm://wbm?broker.persistent=false" />
            <property name="prefetchPolicy"
ref="wbmPrefetchPolicy"></property>
    </bean>


    <!-- Spring JMS Template -->
    <bean id="myJmsTemplate"
        class="org.springframework.jms.core.JmsTemplate">
        <property name="connectionFactory">
            <!-- lets wrap in a pool to avoid creating a connection per send
-->
            <bean

class="org.springframework.jms.connection.SingleConnectionFactory">
                <property name="targetConnectionFactory">
                    <ref local="jmsFactory" />
                </property>
            </bean>
        </property>
        <property name="pubSubDomain" value="true"></property>
        <property name="timeToLive" value="5000"></property>
    </bean>


And active MQ config

<beans>
  <bean
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>

  <broker useJmx="false"  brokerName="wbm" xmlns="
http://activemq.org/config/1.0"; persistent="false">

    <transportConnectors>
      <transportConnector uri="tcp://localhost:61618" />
      <transportConnector uri="stomp://localhost:61668"/>
    </transportConnectors>

     <destinationPolicy>
      <policyMap>
        <policyEntries>

          <policyEntry topic="wbm.>">
            <!-- lets force old messages to be discarded for slow consumers
-->
            <pendingMessageLimitStrategy>
              <constantPendingMessageLimitStrategy limit="30"/>
            </pendingMessageLimitStrategy>
          </policyEntry>
        </policyEntries>
      </policyMap>
    </destinationPolicy>

  </broker>

</beans>

Reply via email to