activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From pradeep <pradeepzm...@gmail.com>
Subject Re: INFO Service - Sync error occurred: java.lang.Ou
Date Thu, 24 Aug 2006 11:08:01 GMT

Thanks Balakumar Narayanasamy.

I believe that the producer/consumer should n't be worried about memory of
the JMS server.It can't keep track of messages. there are lot of client
which would connect to the server.

I am of the view that the JMS server should be the one taking care of memory
and removing messages from  memory when there are no client around.


Balakumar Narayanasamy wrote:
> 
> Hi pradeep,
> I also faced same problem...
> 
> Solution which i adapted is we can have counter for queue whenever we pull
> or push message, we can increment or decrement the counter. You can
> configure threshold value say 750 and you can check your counter while you
> push message to queue. By doing this, you can avoid memory heap error with
> costing performance too much. 
> make threshold value configureable and so size can determined on basis of
> RAM. 
> 
> This will work.
> 
> 
> 
> 
> James.Strachan wrote:
>> 
>> We cache things in RAM since consumers will typically need to read the
>> message too. BTW you're using persistent messaging right? You're
>> setting the PERSISTENT flag on the producer's delivery mode?
>> 
>> Are you using Derby? You could switch to another JDBC driver to avoid
>> the in-RAM JDBC driver using up RAM too.
>> 
>> 
>> On 8/24/06, pradeep <pradeepzmail@gmail.com> wrote:
>>>
>>> James,
>>>
>>> When using JDBC persistence I am seeing that the messages are stored in
>>> memory even after being persisted in database. They are not getting
>>> removed
>>> and this is resulting in outofmemory error.
>>> If I am not wrong, in case of JDBCpersistence adapter the messages will
>>> not
>>> be kept in memory after being written to the db ?
>>>
>>> Pradeep
>>>
>>> James.Strachan wrote:
>>> >
>>> > Incidentally you could disable the journal if you have limited RAM and
>>> > are happy to trade performance for lower RAM usage...
>>> >
>>> > use <jdbcPersistenceAdapter/> instead in your XML like this example
>>> >
>>> > http://incubator.apache.org/activemq/jdbc-master-slave.html
>>> >
>>> > its much slower but doesn't require messages to be kept in RAM until a
>>> > checkpoint.
>>> >
>>> >
>>> > On 8/24/06, James Strachan <james.strachan@gmail.com> wrote:
>>> >> Are you sure you are definitely setting the Java heap size? e.g. its
>>> >> usually -Xmx1000m not -xmx etc. If you watch the broker in JMX do you
>>> >> see it using up 1Gb of RAM when you only have a 100Mb usage manager
>>> >> setting?
>>> >>
>>> >> Note that ActiveMQ uses a high performance journal so that messages
>>> >> are only evicted from RAM when a checkpoint to JDBC occurs, not the
>>> >> exact second that a message is consumed.
>>> >>
>>> >> So you are sending 1000 messages to 5 topics of 100K. So thats about
>>> >> 500Mb of messages. So I'd try set your memoryManager to be 800mb and
>>> >> your Java heap to be about 2000M and that should work - use JMX to
>>> see
>>> >> how much memory its using and how many messages get sent to the
>>> >> queues.
>>> >>
>>> >>
>>> >> On 8/24/06, pradeep <pradeepzmail@gmail.com> wrote:
>>> >> >
>>> >> > Thanks James.
>>> >> > I am using 4.0.1. I tried lowering the memory to 100MB. It did
not
>>> >> work.
>>> >> > I increased the size to 400 MB, 800mb etc.
>>> >> >
>>> >> > It still gives me
>>> >> > Exception in thread "ActiveMQ Transport: tcp:///127.0.0.1:3116"
>>> >> > java.lang.OutOfMemoryError: Java heap space
>>> >> >
>>> >> > Why doesn't ActiveMQ remove the messages from memory when it has
>>> >> already
>>> >> > persisted messages into database. I am seeing  the memory problem
>>> in
>>> >> > ActiveMQ and not other JMS server that I am evaluating.
>>> >> > James, can you please help me here.
>>> >> >
>>> >> > Pradeep
>>> >> >
>>> >> >
>>> >> > James.Strachan wrote:
>>> >> > >
>>> >> > > FWIW if you use ActiveMQ 4.1 you can configure the memory
limit
>>> via
>>> >> > >
>>> >> > > <usageManager limitMb="100"/>
>>> >> > >
>>> >> > > On 8/23/06, James Strachan <james.strachan@gmail.com>
wrote:
>>> >> > >> That memory limit looks a bit big; its about 7Gb I'd maybe
set
>>> it to
>>> >> > >> be around 100Mb insteead
>>> >> > >>
>>> >> > >> On 8/23/06, pradeep <pradeepzmail@gmail.com> wrote:
>>> >> > >> >
>>> >> > >> > 1. Created  a durable subsriber for 5 different topics
and
>>> >> disonnected
>>> >> > >> the
>>> >> > >> > clients
>>> >> > >> > 2. Tried to send 1000 messages to each topic (message
size
>>> =100kb)
>>> >> in
>>> >> > >> > parallel
>>> >> > >> >     5 threads were created each sending messages
to different
>>> >> topics
>>> >> > >> >      (Separate connection Factory lookup and topic
lookup)
>>> >> > >> >     I got this error this
>>> >> > >> >
>>> >> > >> > INFO  Service                        - Sync error
occurred:
>>> >> > >> > java.lang.OutOfMemoryError: Java heap space
>>> >> > >> > java.lang.OutOfMemoryError: Java heap space
>>> >> > >> >
>>> >> > >> > WARN  JournalMessageStore            - Message could
not be
>>> added
>>> >> to
>>> >> > >> long
>>> >> > >> > term store: Java heap space
>>> >> > >> > java.lang.OutOfMemoryError: Java heap space
>>> >> > >> >
>>> >> > >> >
>>> >> > >> > I am running the activemq with -xms 256m -xmx1000m.
>>> >> > >> > activemq.xml has
>>> >> > >> >  <memoryManager>
>>> >> > >> >         <usageManager id="memory-manager" limit="8048576000"/>
>>> >> > >> >     </memoryManager>
>>> >> > >> >
>>> >> > >> > Why is the error coming ?
>>> >> > >> > --
>>> >> > >> > View this message in context:
>>> >> > >>
>>> >>
>>> http://www.nabble.com/INFO--Service--------------------------Sync-error-occurred%3A-java.lang.Ou-tf2152180.html#a5943593
>>> >> > >> > Sent from the ActiveMQ - User forum at Nabble.com.
>>> >> > >> >
>>> >> > >> >
>>> >> > >>
>>> >> > >>
>>> >> > >> --
>>> >> > >>
>>> >> > >> James
>>> >> > >> -------
>>> >> > >> http://radio.weblogs.com/0112098/
>>> >> > >>
>>> >> > >
>>> >> > >
>>> >> > > --
>>> >> > >
>>> >> > > James
>>> >> > > -------
>>> >> > > http://radio.weblogs.com/0112098/
>>> >> > >
>>> >> > >
>>> >> >
>>> >> > --
>>> >> > View this message in context:
>>> >>
>>> http://www.nabble.com/INFO--Service--------------------------Sync-error-occurred%3A-java.lang.Ou-tf2152180.html#a5959137
>>> >> > Sent from the ActiveMQ - User forum at Nabble.com.
>>> >> >
>>> >> >
>>> >>
>>> >>
>>> >> --
>>> >>
>>> >> James
>>> >> -------
>>> >> http://radio.weblogs.com/0112098/
>>> >>
>>> >
>>> >
>>> > --
>>> >
>>> > James
>>> > -------
>>> > http://radio.weblogs.com/0112098/
>>> >
>>> >
>>>
>>> --
>>> View this message in context:
>>> http://www.nabble.com/INFO--Service--------------------------Sync-error-occurred%3A-java.lang.Ou-tf2152180.html#a5960761
>>> Sent from the ActiveMQ - User forum at Nabble.com.
>>>
>>>
>> 
>> 
>> -- 
>> 
>> James
>> -------
>> http://radio.weblogs.com/0112098/
>> 
>> 
> 
> 

-- 
View this message in context: http://www.nabble.com/INFO--Service--------------------------Sync-error-occurred%3A-java.lang.Ou-tf2152180.html#a5961838
Sent from the ActiveMQ - User forum at Nabble.com.


Mime
View raw message