You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by yunusbayraktar <yu...@gmail.com> on 2007/07/03 13:12:00 UTC

Urgent - please help

Hi James,

We have a list of clients and for each client we create a separate
queue(some of them are persistent, some of them are not) dynamically. The
number of clients can be up to 750. We preferred this way because we assumed
that this may be faster than a single queue with Message Selector pattern. 

We are satisfied with the process time but the memory consumption is
constantly increasing even though we use TTL(=5 sec) for our messages when
there is no consumer. As soon as the consumers are at work the memory
consumtion starts to fall down. We concluded that if there is no consumer
for an expired message, it is not removed from the memory. I read that this
was one of the fixes in Snaphot-5.0.

Thanks,

Yunus
-- 
View this message in context: http://www.nabble.com/Urgent---please-help-tf4017651s2354.html#a11410110
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Re: Urgent - please help

Posted by James Strachan <ja...@gmail.com>.
On 7/3/07, yunusbayraktar <yu...@gmail.com> wrote:
> Thanks for your quick reply. We still need the messages for the consumers
> that are not available at the moment. The consumers are display devices and
> they can go off momentarily and when they come back the messages that were
> sent for them needs to be displayed.
>
> We currently are using apache-activemq-5.0-20070702.220514-14.

What kind of expiry do you want? Timeout based on each message? How
are you deciding that its not working in 5.x BTW?

> Is there any plan for fixing the memory problem for the non-persistent
> expired messages when there is no consumer around ?

There's currently no explicit plan yet to implement eager eviction of
messages that have expired; but we welcome patches...
http://activemq.apache.org/contributing.html

FWIW in 5.0 you can enable spooling to disk, so that you never run out
of RAM however much non-persistent messages are hanging around.
Another alternative is a persistent queue

-- 
James
-------
http://macstrac.blogspot.com/

Re: Urgent - please help

Posted by yunusbayraktar <yu...@gmail.com>.
Thanks for your quick reply. We still need the messages for the consumers
that are not available at the moment. The consumers are display devices and
they can go off momentarily and when they come back the messages that were
sent for them needs to be displayed.

We currently are using apache-activemq-5.0-20070702.220514-14.

Is there any plan for fixing the memory problem for the non-persistent
expired messages when there is no consumer around ?

Thanks,

Yunus.



James.Strachan wrote:
> 
> On 7/3/07, yunusbayraktar <yu...@gmail.com> wrote:
>>
>> Hi James,
>>
>> We have a list of clients and for each client we create a separate
>> queue(some of them are persistent, some of them are not) dynamically. The
>> number of clients can be up to 750. We preferred this way because we
>> assumed
>> that this may be faster than a single queue with Message Selector
>> pattern.
>>
>> We are satisfied with the process time but the memory consumption is
>> constantly increasing even though we use TTL(=5 sec) for our messages
>> when
>> there is no consumer. As soon as the consumers are at work the memory
>> consumtion starts to fall down. We concluded that if there is no consumer
>> for an expired message, it is not removed from the memory.
> 
> If you want messages to be discarded for consumers that are not
> available, why not use temporary queues, since they do exactly that
> (delete all messages when a consumer goes away)?
> 
>> I read that this
>> was one of the fixes in Snaphot-5.0.
> 
> So you could try 5.x?
> 
> -- 
> James
> -------
> http://macstrac.blogspot.com/
> 
> 

-- 
View this message in context: http://www.nabble.com/Urgent---please-help-tf4017651s2354.html#a11411165
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Re: Urgent - please help

Posted by James Strachan <ja...@gmail.com>.
On 7/3/07, yunusbayraktar <yu...@gmail.com> wrote:
>
> Hi James,
>
> We have a list of clients and for each client we create a separate
> queue(some of them are persistent, some of them are not) dynamically. The
> number of clients can be up to 750. We preferred this way because we assumed
> that this may be faster than a single queue with Message Selector pattern.
>
> We are satisfied with the process time but the memory consumption is
> constantly increasing even though we use TTL(=5 sec) for our messages when
> there is no consumer. As soon as the consumers are at work the memory
> consumtion starts to fall down. We concluded that if there is no consumer
> for an expired message, it is not removed from the memory.

If you want messages to be discarded for consumers that are not
available, why not use temporary queues, since they do exactly that
(delete all messages when a consumer goes away)?

> I read that this
> was one of the fixes in Snaphot-5.0.

So you could try 5.x?

-- 
James
-------
http://macstrac.blogspot.com/