activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Arjen van der Meijden <>
Subject Memory leaks in AMQ 5.0?
Date Sun, 03 Feb 2008 16:40:17 GMT
Hi list,

Currently we're seeing some strange behaviour from ActiveMQ 5.0 (release 

In our set-up we have one ActiveMQ instance with four queues on it and 
all communication with AMQ is via the Stomp-interface. Although we 
cleaned the activemq.xml a bit, we basically left all settings to their 
respective defaults. We did change the Xmx-parameter in the bin-file to 
2048M though since the below described problems are much worse with only 
the default 512M.

We have five apache/php-webservers that connect to AMQ and produce one 
or two message on every page request. They use the php-implementation of 
Stomp and about 70% of those messages are persistent.
In peak moments, we do about 70-100 pageviews/second (and thus as many 
connections to AMQ), which boils down to per-queue peaks of somewhere in 
the 50 messages/second area.

Each queue has only one consumer. Those consumers throttle their 
consumptionspeed based on the systemload, but normally they consume each 
message as it enters a queue.
The connection/subscription from the consumers to ActiveMQ is opened at 
start and then kept open for the duration of the program.

Under normal conditions there is at most one message in a queue waiting 
to be consumed, but we've also seen it handle a (growing) queue of 100k 
messages with ease.

We're noticing decreasing performance and increasing memory usage over 
time. So two days ago I started logging the CC:PrintGCDetails and made a 
graph of the free new/total heap before and after each young-gc (which 
also shows the full gc's):

As you can see the new-part of the heap (green lines) isn't really 
moving much, but the total heap (orange/red lines) keeps growing during 
the day. What you also can see in the graph is the two nights AMQ was 
running, and where no increase happened (from 20k to 40k seconds and 
100k to 120k). Our nights are, obviously, much quieter than our days.

I've tried the Concurrent GC, but reverted to the Parallel GC since the 
first one couldn't keep up when the heap grew over 700MB. AMQ is running 
on a dual processor opteron with 8GB of memory and several 15k-rpm scsi 
disks in a raid 5 for its storage.

I'm clueless as to what this increase in memory consumption may cause 
and/or how to prevent it.

Any ideas?

Best regards,

Arjen van der Meijden

View raw message