Hi,
We've been having this issue 3 times now where we have only a few message
consumers processing messages. Since our usage pattern is a low-number of
messages but with long processing times, we effectively have contention
because we aren't using more than a few message consumers to process
messages. Our max number of listener threads is 12 and each time this
happened, we ran thread dumps that showed us that only a few (and in one
case, a single) consumers were actually doing work. The same thread dumps
showed that we had indeed a few other listener threads waiting for messages.
I'm assuming that because all of the listeners weren't actually busy, this
prevented additional listener threads to be created, making matters even
worse. 

The problem seems to be on the client side of ActiveMQ/Spring since the
server does eventually dispatch messages to the remaining "working"
listeners. One thing important to note is that we have *prefetching
disabled* although the DefaultMessageListenerContainer's cache level is
still at the default value of CACHE_CONSUMER. Also, restarting the jetty
instance that is the client "fixes" the issue. 

Does anyone have any ideas as to what this could be? 

Here's an extract of the thead dump I referred to (in this one, only one
thread, lowPriorityJobStarterContainer-3, was effectively doing any work).
The relevant thread group names are *JobStarterContainer:Thanks,



--
View this message in context: 
http://activemq.2283324.n4.nabble.com/Intermittent-problem-only-a-few-message-consumers-receiving-processing-messages-tp4665114.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to