The caches for type code definitions and service permissions have been down ported from ICM 11.
The previous TypeCodeDefinitionLRUCache has been replaced by a Guava-based cache. It has been applied to our implementation of the TypeCodeRegistry, which previously did not directly rely on the cache. This change leads to a significant performance improvement as the TypeCodeDefinitions are loaded from the database only once, then cached, and only reloaded from the database when the cache is cleared manually, by a job, or when the ICM is redeployed. This eliminates repetitive calls to the TYPECODEDEFINITION table (e.g., to retrieve ProductLinks) and reduces them to a single initial database call when first retrieving TypeCodeDefinitions using the default TypeCodeRegistry implementation.
The previous configuration property for TypeCodeDefinitionLRUCache is still used, the Guava cache is initialized with initialCapacity and maximumSize provided by the following property:
intershop.cartridges.xcs.typecodedefinition.cache.size=<value>
A Guava-based cache has been applied to our implementation of ServiceConfigurationBORepository. For each domain, it holds the service permissions that allow a service definition.
For more details about the Managed Service Framework, see Concept - Managed Service Framework.
In addition to clearing the cache manually, by a job, or by an ICM redeployment, a cache clear key of type ServicePermissionPOKey is registered. Any ServicePermissionPOKey will clear the entire cache. The cache can be configured using the following property:
intershop.caches.ServicePermissionPOByDomainAndAllowedCache.guava.config=initialCapacity=50,maximumSize=250,recordStats
The information provided in the Knowledge Base may not be applicable to all systems and situations. Intershop Communications will not be liable to any party for any direct or indirect damages resulting from the use of the Customer Support section of the Intershop Corporate Website, including, without limitation, any lost profits, business interruption, loss of programs or other data on your information handling system.