activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rob Davies <rajdav...@gmail.com>
Subject Re: ActiveMQ 5.3.0 cpu usage goes to zero
Date Sat, 27 Mar 2010 09:34:05 GMT
Tim - try 5.3.1

On 26 Mar 2010, at 20:16, TMcCabe wrote:

> 
> 
> Config file:
>    <broker xmlns="http://activemq.apache.org/schema/core"
> brokerName="localhost" dataDirectory="${activemq.base}/data"
> advisorySupport="false">
> 
>        <!-- 
>            The managementContext is used to configure how ActiveMQ is
> exposed in 
>            JMX. By default, ActiveMQ uses the MBean server that is started
> by 
>            the JVM. For more information, see: 
> 
>            http://activemq.apache.org/jmx.html 
>        -->
>        <managementContext>
>            <managementContext createConnector="false"/>
>        </managementContext>
> 
>        <!-- 
>            Configure message persistence for the broker. The default
> persistence
>            mechanism is the KahaDB store (identified by the kahaDB tag). 
>            For more information, see: 
> 
>            http://activemq.apache.org/persistence.html
>            <amqPersistenceAdapter
> directory="${activemq.base}/data/activemq-data" maxFileLength="64mb"/>
>            <kahaDB directory="${activemq.base}/data/kahadb"
> indexWriteBatchSize="10000" indexCacheSize="1000"/>
>            indexWriteBatchSize="10000" indexCacheSize="1000"
> enableIndexWriteAsync="true" journalMaxFileLength="64mb"
>        -->
>        <persistenceAdapter>
>            <amqPersistenceAdapter
> directory="${activemq.base}/data/activemq-data" syncOnWrite="false" />
>        </persistenceAdapter>
> 
> 
>        <!--
> 			For better performances use VM cursor and small memory limit.
> 			For more information, see:
> 
>            http://activemq.apache.org/message-cursors.html
> 
>            Also, if your producer is "hanging", it's probably due to
> producer flow control.
>            For more information, see:
>            http://activemq.apache.org/producer-flow-control.html
> 
>             optimizedDispatch="true"
>        -->
> 
>        <destinationPolicy>
>            <policyMap>
>              <policyEntries>
>                <policyEntry topic=">" producerFlowControl="false"
> memoryLimit="1mb">
>                </policyEntry>
>                <policyEntry queue=">" producerFlowControl="false"
> memoryLimit="1mb" >
>                  <dispatchPolicy>
>                    <strictOrderDispatchPolicy/>
>                  </dispatchPolicy>
> <!--                  <pendingMessageLimitStrategy>
>                      <prefetchRatePendingMessageLimitStrategy
> multiplier="2.5"/>
>                  </pendingMessageLimitStrategy>
> -->
>                 <!-- Use VM cursor for better latency
>                  <pendingQueuePolicy>
>                    <vmQueueCursor/>
>                  </pendingQueuePolicy>
>                       For more information, see:
> 
>                       http://activemq.apache.org/message-cursors.html -->
>                </policyEntry>
>              </policyEntries>
>            </policyMap>
>        </destinationPolicy> 
> 
>         <!--
>            The systemUsage controls the maximum amount of space the broker
> will 
>            use before slowing down producers. For more information, see:
> 
>            http://activemq.apache.org/producer-flow-control.html
>                <tempUsage>
>                    <tempUsage limit="256 mb"/>
>                </tempUsage>
> 		-->
> 
>        <systemUsage>
>            <systemUsage sendFailIfNoSpace="true">
>                <memoryUsage>
>                    <memoryUsage limit="256 mb"/>
>                </memoryUsage>
>                <storeUsage>
>                    <storeUsage limit="60 gb" name="store"/>
>                </storeUsage>
>                <tempUsage>
>                    <tempUsage limit="256 mb"/>
>                </tempUsage>
>            </systemUsage>
>        </systemUsage>
> 		  
>        <!-- 
>            The transport connectors expose ActiveMQ over a given protocol
> to
>            clients and other brokers. For more information, see: 
> 
>            http://activemq.apache.org/configuring-transports.html 
>        -->
>        <transportConnectors>
>            <transportConnector name="openwire"
> uri="tcp://0.0.0.0:61616?wireFormat.maxInactivityDuration=-1&amp;wireFormat.tightEncodingEnabled=false"
> />
>        </transportConnectors>
> 
>    </broker>
> 
> 
> 
> 
> 
> I have 48 Q's with 64 producers with a consumer for each Q. Each producer
> sending a byte message (persistent) of approx 7K to each of the 48 Q's every
> 1.5 seconds. 
> 
> I see the producer hang and the consumer hang as AMQ CPU usage drops to 0
> after 4 minutes. Using jconsole to monitor AMQ performance.
> 
> Any help most appreciated as to what may be happening.
> Am I correct to assume that AMQ cannot handle the load?
> Machine (RHEL v5) 2Core CPU, 4G RAM.
> 
> Look around the forums for similar problems and tried to adjust config
> files.
> Able to get it consistent if using the default store but with one horrible
> side effect in that my producer may not be able to send a message for 2 to 3
> seconds (must send every 1.5)
> 
> TIA,
> 
> T.
> -- 
> View this message in context: http://old.nabble.com/ActiveMQ-5.3.0-cpu-usage-goes-to-zero-tp28047427p28047427.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
> 


Mime
View raw message