Hi folks,

we have a 5.3 embedded KahaDB based broker with just a VM connector on it
(see activemq.xml here http://pastebin.com/f492ec856), our producers
continuously send persistent messages while the consumers run intermittently
(because they are bound to the availability of an external
and intermittently available service).

For this reason we require to be able to accommodate many persistent
messages onto disk, waiting for the superlazy consumers to get them and
without slowing producers down.

We have no constraints at all on disk space utilization.

All we have done so far is to inhibit producer flow control
(producerFlowControl="false") but the behavior it's still a bit unstable and
we quickly get OOM exceptions when we stop consumers.

We're not able to figure out which other parts of activemq.xml configuration
need to be tuned.

Can anyone provide pointers/samples?

Here are a few questions to get us started:

1\ What is the real role played by memoryLimit in
   <policyEntry topic=">" producerFlowControl="false" memoryLimit="1mb">
   <policyEntry queue=">" producerFlowControl="false" memoryLimit="1mb">

2\ <systemUsage> has been left unspecified: what shall we configure to get a
"don't care how much disk is used" behavior?

3\ We kept default message cursor settings, under the assumption that they
were the right ones for our scenario with persistent messages and deep
queues: is this right?

Cheers,
F.

PS: ...if you believe this is a duplicate of "OOM with high KahaDB
indextime" thread, let's keep that one alive and not this.

Reply via email to