You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by SuoNayi <su...@163.com> on 2013/01/25 09:20:18 UTC
SystemUsage questions
Hi, I know that SystemUsage is used to control memory usage(to cache messages) ,
disk space usage for messages storage in the broker and we can allocate memory
usage for each destination while others can not be assigned independently.
I just noticed that there is no SystemUsage section present but the memory
usage limit is enabled for queues in activemq.xml on my production brokers.
In this case broker will create a default SystemUsage with 64M memory usage
limit.But the memory usage limit for queues is 512M, and that's bigger than the
memory usage limit of the broker.So in fact the memory usage limit for queues
is only 64M rather than 512M and I do expect there are some warning/error logs
to indicate unreasonable configuration but not.If there are no jiras about the
problem should I raise one now?
By the way,Does the temp store for non-persistent messages, pending transactional
messages and schedule messages respect the limit of SystemUsage?
I know that pending transactional messages are kept in memory can cause OOM and
later release will save them into the temp store.Is it implemented since 5.6?
Thanks,
SuoNayi
Re: Re: SystemUsage questions
Posted by Gary Tully <ga...@gmail.com>.
that is correct. but that is why we have the usage limits. a really large
transaction will block pending space. We could support spooling to disk in
that scenario but folks have not requested it.
On 26 January 2013 04:14, SuoNayi <su...@163.com> wrote:
> Thank for your clarification.
> I have just took a glance at the source code for 5.8, and found that the
> default
> memory usage limit is 64M still, another limits are improved and an new
> scheduler
> job store limit is introduced.Some checks are performed but memory limit
> for
> destinations are not checked.
> I found MemoryTransactionStore is still to used to hold penging messages of
> transactions, more large transaction more messages are kept in RAM still
> and
> eventually memory will be exhausted.
> Does I miss something?
>
>
> Thanks
> SuoNayi
>
> At 2013-01-25 20:07:46,"Christian Posta" <ch...@gmail.com>
> wrote:
> >Sorry, i mean to say "scheduled messagaes do use their own store, not temp
> >store"
> >
> >
> >On Fri, Jan 25, 2013 at 4:58 AM, Christian Posta
> ><ch...@gmail.com>wrote:
> >
> >> To add:
> >>
> >> scheduled messages don't use their own store. they are currently
> >> unbounded, but this has been resolved here:
> >> https://issues.apache.org/jira/browse/AMQ-4068
> >>
> >>
> >> On Fri, Jan 25, 2013 at 4:24 AM, Gary Tully <ga...@gmail.com>
> wrote:
> >>
> >>> the defaults increased for 5.7 and there are additional warnings but i
> >>> think there is still some room for improvement. maybe peek at a 5.8
> snap.
> >>>
> >>> also, pending messages in a transaction do now respect the limits.
> >>>
> >>>
> >>> On 25 January 2013 08:20, SuoNayi <su...@163.com> wrote:
> >>>
> >>> > Hi, I know that SystemUsage is used to control memory usage(to cache
> >>> > messages) ,
> >>> > disk space usage for messages storage in the broker and we can
> allocate
> >>> > memory
> >>> > usage for each destination while others can not be assigned
> >>> independently.
> >>> > I just noticed that there is no SystemUsage section present but the
> >>> memory
> >>> > usage limit is enabled for queues in activemq.xml on my production
> >>> brokers.
> >>> > In this case broker will create a default SystemUsage with 64M memory
> >>> usage
> >>> > limit.But the memory usage limit for queues is 512M, and that's
> bigger
> >>> > than the
> >>> > memory usage limit of the broker.So in fact the memory usage limit
> for
> >>> > queues
> >>> > is only 64M rather than 512M and I do expect there are some
> >>> warning/error
> >>> > logs
> >>> > to indicate unreasonable configuration but not.If there are no jiras
> >>> about
> >>> > the
> >>> > problem should I raise one now?
> >>> >
> >>> >
> >>> > By the way,Does the temp store for non-persistent messages, pending
> >>> > transactional
> >>> > messages and schedule messages respect the limit of SystemUsage?
> >>> > I know that pending transactional messages are kept in memory can
> cause
> >>> > OOM and
> >>> > later release will save them into the temp store.Is it implemented
> since
> >>> > 5.6?
> >>> >
> >>> >
> >>> > Thanks,
> >>> > SuoNayi
> >>> >
> >>> >
> >>> >
> >>> >
> >>> >
> >>> >
> >>> >
> >>> >
> >>> >
> >>> >
> >>> >
> >>> >
> >>>
> >>>
> >>> --
> >>> http://redhat.com
> >>> http://blog.garytully.com
> >>>
> >>
> >>
> >>
> >> --
> >> *Christian Posta*
> >> http://www.christianposta.com/blog
> >> twitter: @christianposta
> >>
> >
> >
> >
> >--
> >*Christian Posta*
> >http://www.christianposta.com/blog
> >twitter: @christianposta
>
--
http://redhat.com
http://blog.garytully.com
Re:Re: SystemUsage questions
Posted by SuoNayi <su...@163.com>.
Thank for your clarification.
I have just took a glance at the source code for 5.8, and found that the default
memory usage limit is 64M still, another limits are improved and an new scheduler
job store limit is introduced.Some checks are performed but memory limit for
destinations are not checked.
I found MemoryTransactionStore is still to used to hold penging messages of
transactions, more large transaction more messages are kept in RAM still and
eventually memory will be exhausted.
Does I miss something?
Thanks
SuoNayi
At 2013-01-25 20:07:46,"Christian Posta" <ch...@gmail.com> wrote:
>Sorry, i mean to say "scheduled messagaes do use their own store, not temp
>store"
>
>
>On Fri, Jan 25, 2013 at 4:58 AM, Christian Posta
><ch...@gmail.com>wrote:
>
>> To add:
>>
>> scheduled messages don't use their own store. they are currently
>> unbounded, but this has been resolved here:
>> https://issues.apache.org/jira/browse/AMQ-4068
>>
>>
>> On Fri, Jan 25, 2013 at 4:24 AM, Gary Tully <ga...@gmail.com> wrote:
>>
>>> the defaults increased for 5.7 and there are additional warnings but i
>>> think there is still some room for improvement. maybe peek at a 5.8 snap.
>>>
>>> also, pending messages in a transaction do now respect the limits.
>>>
>>>
>>> On 25 January 2013 08:20, SuoNayi <su...@163.com> wrote:
>>>
>>> > Hi, I know that SystemUsage is used to control memory usage(to cache
>>> > messages) ,
>>> > disk space usage for messages storage in the broker and we can allocate
>>> > memory
>>> > usage for each destination while others can not be assigned
>>> independently.
>>> > I just noticed that there is no SystemUsage section present but the
>>> memory
>>> > usage limit is enabled for queues in activemq.xml on my production
>>> brokers.
>>> > In this case broker will create a default SystemUsage with 64M memory
>>> usage
>>> > limit.But the memory usage limit for queues is 512M, and that's bigger
>>> > than the
>>> > memory usage limit of the broker.So in fact the memory usage limit for
>>> > queues
>>> > is only 64M rather than 512M and I do expect there are some
>>> warning/error
>>> > logs
>>> > to indicate unreasonable configuration but not.If there are no jiras
>>> about
>>> > the
>>> > problem should I raise one now?
>>> >
>>> >
>>> > By the way,Does the temp store for non-persistent messages, pending
>>> > transactional
>>> > messages and schedule messages respect the limit of SystemUsage?
>>> > I know that pending transactional messages are kept in memory can cause
>>> > OOM and
>>> > later release will save them into the temp store.Is it implemented since
>>> > 5.6?
>>> >
>>> >
>>> > Thanks,
>>> > SuoNayi
>>> >
>>> >
>>> >
>>> >
>>> >
>>> >
>>> >
>>> >
>>> >
>>> >
>>> >
>>> >
>>>
>>>
>>> --
>>> http://redhat.com
>>> http://blog.garytully.com
>>>
>>
>>
>>
>> --
>> *Christian Posta*
>> http://www.christianposta.com/blog
>> twitter: @christianposta
>>
>
>
>
>--
>*Christian Posta*
>http://www.christianposta.com/blog
>twitter: @christianposta
Re: SystemUsage questions
Posted by Christian Posta <ch...@gmail.com>.
Sorry, i mean to say "scheduled messagaes do use their own store, not temp
store"
On Fri, Jan 25, 2013 at 4:58 AM, Christian Posta
<ch...@gmail.com>wrote:
> To add:
>
> scheduled messages don't use their own store. they are currently
> unbounded, but this has been resolved here:
> https://issues.apache.org/jira/browse/AMQ-4068
>
>
> On Fri, Jan 25, 2013 at 4:24 AM, Gary Tully <ga...@gmail.com> wrote:
>
>> the defaults increased for 5.7 and there are additional warnings but i
>> think there is still some room for improvement. maybe peek at a 5.8 snap.
>>
>> also, pending messages in a transaction do now respect the limits.
>>
>>
>> On 25 January 2013 08:20, SuoNayi <su...@163.com> wrote:
>>
>> > Hi, I know that SystemUsage is used to control memory usage(to cache
>> > messages) ,
>> > disk space usage for messages storage in the broker and we can allocate
>> > memory
>> > usage for each destination while others can not be assigned
>> independently.
>> > I just noticed that there is no SystemUsage section present but the
>> memory
>> > usage limit is enabled for queues in activemq.xml on my production
>> brokers.
>> > In this case broker will create a default SystemUsage with 64M memory
>> usage
>> > limit.But the memory usage limit for queues is 512M, and that's bigger
>> > than the
>> > memory usage limit of the broker.So in fact the memory usage limit for
>> > queues
>> > is only 64M rather than 512M and I do expect there are some
>> warning/error
>> > logs
>> > to indicate unreasonable configuration but not.If there are no jiras
>> about
>> > the
>> > problem should I raise one now?
>> >
>> >
>> > By the way,Does the temp store for non-persistent messages, pending
>> > transactional
>> > messages and schedule messages respect the limit of SystemUsage?
>> > I know that pending transactional messages are kept in memory can cause
>> > OOM and
>> > later release will save them into the temp store.Is it implemented since
>> > 5.6?
>> >
>> >
>> > Thanks,
>> > SuoNayi
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>>
>>
>> --
>> http://redhat.com
>> http://blog.garytully.com
>>
>
>
>
> --
> *Christian Posta*
> http://www.christianposta.com/blog
> twitter: @christianposta
>
--
*Christian Posta*
http://www.christianposta.com/blog
twitter: @christianposta
Re: SystemUsage questions
Posted by Christian Posta <ch...@gmail.com>.
To add:
scheduled messages don't use their own store. they are currently unbounded,
but this has been resolved here:
https://issues.apache.org/jira/browse/AMQ-4068
On Fri, Jan 25, 2013 at 4:24 AM, Gary Tully <ga...@gmail.com> wrote:
> the defaults increased for 5.7 and there are additional warnings but i
> think there is still some room for improvement. maybe peek at a 5.8 snap.
>
> also, pending messages in a transaction do now respect the limits.
>
>
> On 25 January 2013 08:20, SuoNayi <su...@163.com> wrote:
>
> > Hi, I know that SystemUsage is used to control memory usage(to cache
> > messages) ,
> > disk space usage for messages storage in the broker and we can allocate
> > memory
> > usage for each destination while others can not be assigned
> independently.
> > I just noticed that there is no SystemUsage section present but the
> memory
> > usage limit is enabled for queues in activemq.xml on my production
> brokers.
> > In this case broker will create a default SystemUsage with 64M memory
> usage
> > limit.But the memory usage limit for queues is 512M, and that's bigger
> > than the
> > memory usage limit of the broker.So in fact the memory usage limit for
> > queues
> > is only 64M rather than 512M and I do expect there are some warning/error
> > logs
> > to indicate unreasonable configuration but not.If there are no jiras
> about
> > the
> > problem should I raise one now?
> >
> >
> > By the way,Does the temp store for non-persistent messages, pending
> > transactional
> > messages and schedule messages respect the limit of SystemUsage?
> > I know that pending transactional messages are kept in memory can cause
> > OOM and
> > later release will save them into the temp store.Is it implemented since
> > 5.6?
> >
> >
> > Thanks,
> > SuoNayi
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
>
>
> --
> http://redhat.com
> http://blog.garytully.com
>
--
*Christian Posta*
http://www.christianposta.com/blog
twitter: @christianposta
Re: SystemUsage questions
Posted by Gary Tully <ga...@gmail.com>.
the defaults increased for 5.7 and there are additional warnings but i
think there is still some room for improvement. maybe peek at a 5.8 snap.
also, pending messages in a transaction do now respect the limits.
On 25 January 2013 08:20, SuoNayi <su...@163.com> wrote:
> Hi, I know that SystemUsage is used to control memory usage(to cache
> messages) ,
> disk space usage for messages storage in the broker and we can allocate
> memory
> usage for each destination while others can not be assigned independently.
> I just noticed that there is no SystemUsage section present but the memory
> usage limit is enabled for queues in activemq.xml on my production brokers.
> In this case broker will create a default SystemUsage with 64M memory usage
> limit.But the memory usage limit for queues is 512M, and that's bigger
> than the
> memory usage limit of the broker.So in fact the memory usage limit for
> queues
> is only 64M rather than 512M and I do expect there are some warning/error
> logs
> to indicate unreasonable configuration but not.If there are no jiras about
> the
> problem should I raise one now?
>
>
> By the way,Does the temp store for non-persistent messages, pending
> transactional
> messages and schedule messages respect the limit of SystemUsage?
> I know that pending transactional messages are kept in memory can cause
> OOM and
> later release will save them into the temp store.Is it implemented since
> 5.6?
>
>
> Thanks,
> SuoNayi
>
>
>
>
>
>
>
>
>
>
>
>
--
http://redhat.com
http://blog.garytully.com