You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by Kim Pepper <ki...@pepper.id.au> on 2006/05/29 01:01:54 UTC

consumers stop when queue is full

We have been having some major issue with activemq (both 3.2 and 4.0
versions) in our production environment. We have consumers which can take
between approx 5-120 secs to process a message. When the queue is reasonably
empty, the messages are consumed in at a good rate.

The messages are produced quicker than they can be consumed, and the quick
fills over a couple of hours. 

When we configured activemq to be non-persistent, the queue fills and the
producers are blocked. I assume this is the default strategy of the
non-persistent in-memory queue.

However, the consumers also seem to stop consuming messages. The end result
is there are no more messages being consumed.  The load on the servers is
less than 1% and there is plenty of free cpu, memory and disk space.

I would love to hear from anyone who has had experience with activemq in a
production environment to do with configuring activemq.

We are getting quite desperate, and have starting developing a solution in
xmpp (jabber) as a work-around.

Any help would be greatly appreciated.

Kim

________________________________
Kim Pepper
Mooter Media 
Sydney, Australia
--
View this message in context: http://www.nabble.com/consumers+stop+when+queue+is+full-t1696451.html#a4603947
Sent from the ActiveMQ - User forum at Nabble.com.


Re: consumers stop when queue is full

Posted by Danielius Jurna <da...@elitnet.lt>.
We are also having similar problem.
During load testing, our producers generated slightly more messages, than
consumer can handle. After some time the queue is blocked and messages are
not consumed. There are about 1000 messages in the queue when this happens,
but queue size is not the problem here I thint (the block occures after the
producer is finished and consumer is consuming remaining messages).
We are consuming messages whith Stomp client, and producing whith normal
java client. We are using latest svn version of ActiveMQ 4.0 whith default
configuration.
How can destination size limit prevent from deadlock? And dedlock is in the
broker, not in the client - client restart doesn't help.
How to correctly send messages back to the broker from the consumer to
prevent deadlocks?
--
View this message in context: http://www.nabble.com/consumers+stop+when+queue+is+full-t1696451.html#a4633874
Sent from the ActiveMQ - User forum at Nabble.com.


Re: consumers stop when queue is full

Posted by Hiram Chirino <hi...@hiramchirino.com>.
Is your consumer sending messages back to the broker? Perhaps you have
a deadlock condition.  Setting per destination size limits would help
with that problem.

On 5/28/06, Kim Pepper <ki...@pepper.id.au> wrote:
>
> We have been having some major issue with activemq (both 3.2 and 4.0
> versions) in our production environment. We have consumers which can take
> between approx 5-120 secs to process a message. When the queue is reasonably
> empty, the messages are consumed in at a good rate.
>
> The messages are produced quicker than they can be consumed, and the quick
> fills over a couple of hours.
>
> When we configured activemq to be non-persistent, the queue fills and the
> producers are blocked. I assume this is the default strategy of the
> non-persistent in-memory queue.
>
> However, the consumers also seem to stop consuming messages. The end result
> is there are no more messages being consumed.  The load on the servers is
> less than 1% and there is plenty of free cpu, memory and disk space.
>
> I would love to hear from anyone who has had experience with activemq in a
> production environment to do with configuring activemq.
>
> We are getting quite desperate, and have starting developing a solution in
> xmpp (jabber) as a work-around.
>
> Any help would be greatly appreciated.
>
> Kim
>
> ________________________________
> Kim Pepper
> Mooter Media
> Sydney, Australia
> --
> View this message in context: http://www.nabble.com/consumers+stop+when+queue+is+full-t1696451.html#a4603947
> Sent from the ActiveMQ - User forum at Nabble.com.
>
>


-- 
Regards,
Hiram

Re: consumers stop when queue is full

Posted by Kim Pepper <ki...@pepper.id.au>.
I'm using 4.0 release. But the same problem occurs in 3.2 release.
--
View this message in context: http://www.nabble.com/consumers+stop+when+queue+is+full-t1696451.html#a4605993
Sent from the ActiveMQ - User forum at Nabble.com.


Re: consumers stop when queue is full

Posted by Jonas Lim <jl...@exist.com>.
Which version of activemq are you using?  Mx, RCx or snapshot?


regards,
Jonas


----- Original Message ----- 
From: "Kim Pepper" <ki...@pepper.id.au>
To: <ac...@geronimo.apache.org>
Sent: Monday, May 29, 2006 7:01 AM
Subject: consumers stop when queue is full


>
> We have been having some major issue with activemq (both 3.2 and 4.0
> versions) in our production environment. We have consumers which can take
> between approx 5-120 secs to process a message. When the queue is 
> reasonably
> empty, the messages are consumed in at a good rate.
>
> The messages are produced quicker than they can be consumed, and the quick
> fills over a couple of hours.
>
> When we configured activemq to be non-persistent, the queue fills and the
> producers are blocked. I assume this is the default strategy of the
> non-persistent in-memory queue.
>
> However, the consumers also seem to stop consuming messages. The end 
> result
> is there are no more messages being consumed.  The load on the servers is
> less than 1% and there is plenty of free cpu, memory and disk space.
>
> I would love to hear from anyone who has had experience with activemq in a
> production environment to do with configuring activemq.
>
> We are getting quite desperate, and have starting developing a solution in
> xmpp (jabber) as a work-around.
>
> Any help would be greatly appreciated.
>
> Kim
>
> ________________________________
> Kim Pepper
> Mooter Media
> Sydney, Australia
> --
> View this message in context: 
> http://www.nabble.com/consumers+stop+when+queue+is+full-t1696451.html#a4603947
> Sent from the ActiveMQ - User forum at Nabble.com. 


Re: consumers stop when queue is full

Posted by James Strachan <ja...@gmail.com>.
If you want to deal with bursts of fast producers and if it takes a
long time to process messages on the queue then you either need to
allocate lots of RAM for the non-durable queues to be able to use -
otherwise the non-durable queues will run out of RAM - or a better
option is just to use durable queues which can deal with huge queues
(millions of messages on the queue) without any issue.

If you have a problem with the performance of producers on a durable
queue - and you kinda want the semantics of non-durable queues - just
enable asynchronous sending which means your producers will be about
the same high performance as non-durable queues - but you will be able
to deal with very fast producers and slow consumers very nicely.

http://incubator.apache.org/activemq/async-sends.html

On 5/29/06, Kim Pepper <ki...@pepper.id.au> wrote:
>
> We have been having some major issue with activemq (both 3.2 and 4.0
> versions) in our production environment. We have consumers which can take
> between approx 5-120 secs to process a message. When the queue is reasonably
> empty, the messages are consumed in at a good rate.
>
> The messages are produced quicker than they can be consumed, and the quick
> fills over a couple of hours.
>
> When we configured activemq to be non-persistent, the queue fills and the
> producers are blocked. I assume this is the default strategy of the
> non-persistent in-memory queue.
>
> However, the consumers also seem to stop consuming messages. The end result
> is there are no more messages being consumed.  The load on the servers is
> less than 1% and there is plenty of free cpu, memory and disk space.
>
> I would love to hear from anyone who has had experience with activemq in a
> production environment to do with configuring activemq.
>
> We are getting quite desperate, and have starting developing a solution in
> xmpp (jabber) as a work-around.
>
> Any help would be greatly appreciated.
>
> Kim
>
> ________________________________
> Kim Pepper
> Mooter Media
> Sydney, Australia
> --
> View this message in context: http://www.nabble.com/consumers+stop+when+queue+is+full-t1696451.html#a4603947
> Sent from the ActiveMQ - User forum at Nabble.com.
>
>


-- 

James
-------
http://radio.weblogs.com/0112098/