At 10:25 +0200 18-04-2005, Henk Hangyi wrote:
The installation now runs with:

-Xmx512 -Xms512 -server -XX:NewRatio=2 -XX:SurvivorRatio=6

Total memory is 1024.

The strange thing with the GC is that with this settings the number of
Full GCs increases with time and after a some time the installation is
only performing Full GC's (see part of the log below). Any idea what
this means?

This means that the ratio between New, Tenured and Survivor (= in order of 'newness') probably needs a litle more tuning, with '-XX:+PrintGCDetails' you will get more details in your gc log. Like for example:


328575.711: [GC 328575.712: [DefNew: 265529K->37305K(291328K), 0.2588330 secs] 948852K->727507K(990400K), 0.2589020 secs]
328922.903: [GC 328922.903: [DefNew: 270392K->32290K(291328K), 0.2182440 secs] 960594K->729773K(990400K), 0.2183120 secs]
329247.913: [GC 329247.913: [DefNew: 265377K->29637K(291328K), 0.2047130 secs]329248.118: [Tenured: 705134K->125824K(705216K), 1.3890390 secs] 962861K->125824K(996544K), 1.5950540 secs]


In the first two lines you can read that the New ratio does some gc. In the last line the New and Tenured ratio are doing a gc.

 > Is OSCache set to a maximum? Does it cache to memory and/or disk?

The maximum is set to 1000 and only memory cache is used at this moment.
What are your experiences with the settings for OSCache?

In one of our sites i have used the setting that OSCache should cache 512 items to memory, when that limit is reached the rest of it will overflow to disk.


# CACHE IN MEMORY
#
# If you want to disable memory caching, just uncomment this line.
#
# cache.memory=false

[snip]

# CACHE PERSISTENCE CLASS
#
# Specify the class to use for persistence. If you use the supplied DiskPersistenceListener,
# don't forget to supply the cache.path property to specify the location of the cache
# directory.
#
# If a persistence class is not specified, OSCache will use memory caching only.
#
cache.persistence.class=com.opensymphony.oscache.plugins.diskpersistence.DiskPersistenceListener


# CACHE DIRECTORY
#
# This is the directory on disk where caches will be stored by the DiskPersistenceListener.
# it will be created if it doesn't already exist. Remember that OSCache must have
# write permission to this directory.
#
# Note: for Windows machines, this needs \ to be escaped
# ie Windows:
# cache.path=c:\\myapp\\cache
# or *ix:
# cache.path=/opt/myapp/cache
#
cache.path=/bla/tomcat/work


[snip]

# CACHE SIZE
#
# Default cache size in number of items. If a size is specified but not
# an algorithm, the cache algorithm used will be LRUCache.
#
cache.capacity=512

# CACHE OVERFLOW
#
# When cache.capacity is reached it will overflow to disk
#
cache.persistence.overflow.only=true

# CACHE UNLIMITED DISK
# Use unlimited disk cache or not. The default value is false, which means
# the disk cache will be limited in size to the value specified by cache.capacity.
#
cache.unlimited.disk=false


[snip]

Allthough you would presume on basis of the last setting 'cache.unlimited.disk=false' that all caches remain in memory, i see caches occur on disk. And i believe this is the most preferable setting because memory will be filled with caches that are asked for most often and the 'older' caches are written to disk.

---Andr�
--
Andr� van Toly
http://www.toly.nl                                mobile +31(0)627233562
------------------------------------------------------------------>><<--
_______________________________________________
Developers mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/developers

Reply via email to