Obviously something is different. Given tomcat and the web-app are the
same, I would guess environmental differences exist between test and
production. Do both have the same set of services? Same OS? OOM errors
can also indicate a lack of system resources such as file handles.
Just throwing out some ideas to look in to.
-- David
Roel De Nijs wrote:
The problem we are confronted with: all our web-apps are running fine in our test-environment, even if workload is simulated to be very high. If we go to production environment (which is an exact copy of the test-environment) then tomcat gives OOME, sometimes 3-4 times a day. And it looks to be at random situations, so it's a really big mistery why in test everything goes well and in production it crashes more then once a day. And it's doing it for approx 4 months now, so it's time it's getting solved.
[EMAIL PROTECTED] 2/02/2006 11:06 >>>
From: Roel De Nijs [mailto:[EMAIL PROTECTED]
I have a tomcat with ± 10 web-applications. Is there a
maximum or some guidance in the number of web-apps you can
put in one instance of Tomcat?
Tomcat itself uses relatively little memory per-webapp (a few megabytes,
depending on version). The major load comes from the number of simultaneous
connections (and hence the size of the thread pool) and, even more, from how
the webapps are written. You're in the best place to evaluate these.
And i start tomcat with the options -Xmx1024m -Xms1024m -->
is there some information or articles about how tomcat is
spreading all this memory over the web-apps? Is this
completely random, or first come first gets? What if a
web-app is called for the first time and all possible memory
is allocated to other web-apps?
It's all one big object memory, shared between all the webapps. Roughly (there
are many more nuances than this): whenever it gets full, the garbage-collector
is run. If there's not enough space to allocate an object after the garbage
collector has run, you get an OutOfMemoryError. So memory will be allocated as
your webapps request it (and potentially returned to the Java VM's pool of free
memory some unknown time after they stop using it); if a webapp is called for
the first time and there's not enough space to allocate the memory required for
its startup, you'll get an OOME.
To my knowledge, there is no way of partitioning memory inside a single JVM
such that the amount available to a given webapp can be restricted.
- Peter
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
**************************************************************
Disclaimer: zie www.aquafin.be
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]