activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From TMcCabe <team...@hotmail.com>
Subject Re: ActiveMQ 5.3.0 cpu usage goes to zero
Date Mon, 29 Mar 2010 15:20:35 GMT

More  information.....

VM Summary physical memory goes way down to 150,516.
So the resource thing might be right.

Heap usage for AMQ seems excellent. 

Do I have the correct configuration for AMQ to store persistent msgs to
disk?

TIA,

T.



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-tp28047427p28070845.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Mime
View raw message