Server cache tuning parameters

File config.xml contains cache parameters for PolicyCenter. Access this file from Guidewire Studio at configuration > config.

Parameter

Description

ExchangeRatesRefreshIntervalSecs

The number of seconds between refreshes of the exchange rates cache. PolicyCenter uses this specialized cache for exchange rates only.

GlobalCacheActiveTimeMinutes

Time, in minutes, that PolicyCenter considers cached objects active. You can think of this as a period in which PolicyCenter is heavily using an item, for example, how long a user stays on a screen. The cache mechanism gives higher priority to preserving these higher-use objects.

Set GlobalCacheActiveTimeMinutes to a value less than GlobalCacheReapingTimeMinutes.

GlobalCacheDetailedStats

Boolean value that specifies whether to collect detailed statistics for the global cache. Detailed statistics are data that PolicyCenter collects to explain why the caching mechanism evicted items from the cache. PolicyCenter collects basic statistics, such as the miss ratio, regardless of the value of GlobalCacheDetailedStats. Disabling collection of detailed cache statistics can sometimes improve performance.

Guidewire sets the value of GlobalCacheDetailedStats to false by default. Set the parameter to true to help tune your cache.

If the GlobalCacheDetailedStats parameter is set to false, the Cache Info screen does not include the Evict Information and Type of Cache Misses graphs.

At runtime, use the Management Beans screen to enable the collection of detailed statistics for the global cache.

GlobalCacheReapingTimeMinutes

Time, in minutes, since the last use of a cached object before PolicyCenter considers the object eligible for reaping. This can be thought of as the period during which PolicyCenter is most likely to reuse an object.

An evict timeout mechanism removes old objects from the cache. Once per minute, a thread evicts cache entries that have not been used for a period equal to or greater than GlobalCacheReapingTimeMinutes. This mechanism differs from the stale timeout mechanism. The stale timeout mechanism refreshes from the database those cache entries that have exceeded the stale time. This process occurs as the server accesses a cached object. The evict timeout mechanism deletes any cache entries that are older than the default evict time. An object can become stale but not evicted if it is continually in use. For example, a bean has an evict time of 15 minutes and a stale time of 30 minutes. If the server uses the object once every 14 minutes, PolicyCenter never evicts the cache entry, but the entry does eventually become stale.

GlobalCacheReapingTimeMinutes is initially set to 15 minutes. The minimum value for this parameter is 1 minute. Since the eviction thread only runs once per minute, a smaller value would not make sense. The maximum value for this parameter is 15 minutes.

GroupCacheRefreshIntervalSecs

The number of seconds between refreshes of the groups cache. PolicyCenter uses this specialized cache for group-related data only.

GlobalCacheSizeMegabytes

Maximum amount of heap space used to store cached entities, expressed as a number of megabytes. This parameter supersedes the value of GlobalCacheSizePercent.

At runtime, you can use the Cache Info or Management Beans screen to modify this value.

GlobalCacheSizePercent

Maximum amount of heap space used to store cached entities, expressed as a percentage of the maximum heap size.

GlobalCacheStaleTimeMinutes

Time, in minutes, after which PolicyCenter considers an object in the cache stale if it has not been refreshed from the database.

A stale timeout mechanism ensures that the server does not use excessively old object entries. An object is stale if it has not been refreshed from the database within a configurable amount of time. Upon accessing a cache entry, the server calculates the duration since the object was last read from the database. If that duration exceeds the stale time, the server refreshes the cache entry from the database. To avoid increased complexity, PolicyCenter prefers this mechanism over evicting objects upon stale timeout.

At runtime, you can use the Cache Info or Management Beans screen to modify this value.

GlobalCacheStatsWindowMinutes

This parameter denotes a period of time, in minutes, that PolicyCenter uses for two purposes:

  • The period of time to preserve the reason that PolicyCenter evicted an object, after the event occurred. If a cache miss occurs, PolicyCenter reports the reason on the Cache Info screen.
  • The period of time to display statistics on the chart on the Cache Info screen.

ScriptParametersRefreshIntervalSecs

The number of seconds between refreshes of the script parameters cache. PolicyCenter uses this specialized cache for script parameters only.

ZoneCacheRefreshIntervalSecs

The number of seconds between refreshes of the zones cache. PolicyCenter uses this specialized cache for zones only.

See also