PPM cache overview
This topic introduces PPM cache.
Types of PPM cache
PPM administrators can tune the following type of PPM cache:
-
Legacy cache. For example, table components, request type search fields, and list validation values.
It is configured in the
<PPM_HOME>/conf/tune.conf
directory. Setting the parameters inserver.conf
works too, and some of the parameters can be edited from the Administration Console. You can view its cache statistics in the Server Cache Status report in Server Tools of PPM Workbench. -
New cache. For example, requests, request types, and modules.
It is configured in the
<PPM_HOME>/conf/cache.conf
directory. You can view its cache statistics in the CacheManager Statistics report in Server Tools of PPM Workbench.
Note: There is a third type of caches in PPM (the Hibernate second level cache). However, this is an internal cache that cannot be configured or tuned. Its configuration is defined in the <SERVER_HOME>\deploy\itg.war\WEB-INF\conf\ehcache.xml
directory and it should not be tampered with.
Advantages of new cache over legacy cache
The new cache has the following advantages over the legacy cache:
-
All cache objects are stored using Java SoftReference. As a result, if the JVM runs out of heap memory, objects in the cache will be automatically garbage collected to free up memory. This makes it possible to store large amounts of data in the cache without risking out-of-memory issues under heavy system load.
-
There are more cache configuration parameters (at least until PPM 9.31, in which new cache configuration has been simplified).
-
It is possible to flush a single object in the new cache by using the
ksc_flush_cache
special command (which only works with new cache), whereas only full cache flush is possible when usingkRunCacheManager.sh
(which works with both legacy and new cache). -
The new cache provides configurable staleness checks, whereas such checks are hard coded in the legacy cache.
-
More data is included in the cache report (number of staleness checks, average load time, and number of flushes of different types).