We are having issues with messages getting stuck in the queue. OS: Windows 2008 Server 64-bit ApacheMQ: 5.8.0 64-bit Connection String: failover:(tcp://{0}:{1})?initialReconnectDelay=3500&wireFormat.tightEncodingEnabled=true&nms.PrefetchPolicy.QueuePrefetch=1 java.exe process memory usage gets to about 1.2GB
Scenario: Producer creates 2 queues upon startup (send queue & recv queue) Consumer watches advisory queue and listens to all send queues (round robin) Consumer loops through queues and calls IMessageConsumer.ReceiveNoWait() and checks != null The producer submits 3000 (CreateBytesMessage) messages or so using: message.Producer.Send(message.Message, MsgDeliveryMode.NonPersistent, MsgPriority.Normal, _ttl); _ttl is 0:0:0 we have 400 consumers and it takes a consumer about 10 seconds to process a message typically about 20 - 30 messages get stuck in the queue. Config file: <beans xmlns="http://www.springframework.org/schema/beans" xmlns:amq="http://activemq.apache.org/schema/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd"> <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <value>file:${activemq.conf}/credentials.properties</value> </property> </bean> <broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost" dataDirectory="${activemq.data}" schedulePeriodForDestinationPurge="5000"> <destinationPolicy> <policyMap> <policyEntries> <policyEntry topic=">" producerFlowControl="true"> <pendingMessageLimitStrategy> <constantPendingMessageLimitStrategy limit="1000"/> </pendingMessageLimitStrategy> </policyEntry> <policyEntry queue=">" producerFlowControl="false" gcInactiveDestinations="true" inactiveTimoutBeforeGC="5000"> </policyEntry> </policyEntries> </policyMap> </destinationPolicy> <managementContext> <managementContext createConnector="false"/> </managementContext> <persistenceAdapter> <kahaDB directory="${activemq.data}/kahadb"/> </persistenceAdapter> <systemUsage> <systemUsage> <memoryUsage> <memoryUsage limit="64 mb"/> </memoryUsage> <storeUsage> <storeUsage limit="100 gb"/> </storeUsage> <tempUsage> <tempUsage limit="50 gb"/> </tempUsage> </systemUsage> </systemUsage> <transportConnectors> <transportConnector name="openwire" uri="tcp://0.0.0.0:25055?maximumConnections=1000&wireformat.maxFrameSize=104857600"/> <transportConnector name="amqp" uri="amqp://0.0.0.0:5672?maximumConnections=1000&wireformat.maxFrameSize=104857600"/> </transportConnectors> <shutdownHooks> <bean xmlns="http://www.springframework.org/schema/beans" class="org.apache.activemq.hooks.SpringContextHook" /> </shutdownHooks> </broker> <import resource="jetty.xml"/> </beans> -- View this message in context: http://activemq.2283324.n4.nabble.com/Messages-Stuck-In-Queue-tp4670293.html Sent from the ActiveMQ - User mailing list archive at Nabble.com.