eXo Platform provides a list of Portal caches, including:
These Portal caches can be overridden in the following files. See Configuration overview for how-to.
$PLATFORM_TOMCAT_HOME/gatein/conf/exo.properties
(Tomcat).
$PLATFORM_JBOSS_HOME/standalone/configuration/gatein/exo.properties
(JBoss).
# Portal Cache Configuration - MOP session Manager # - Standalone (live time in seconds) exo.cache.portal.mop.maxsize=5000 exo.cache.portal.mop.livetime=600 # - Cluster (expiration in milliseconds) exo.cache.portal.mop.maxnodes=5000 exo.cache.portal.mop.expiration=600000 # Portal Cache Configuration - Navigation Service # - Standalone (live time in seconds) exo.cache.portal.navigation.maxsize=5000 exo.cache.portal.navigation.livetime=600 # - Cluster (expiration in milliseconds) exo.cache.portal.navigation.maxnodes=5000 exo.cache.portal.navigation.expiration=600000 # Portal Cache Configuration - Description Service # - Standalone (live time in seconds) exo.cache.portal.description.maxsize=5000 exo.cache.portal.description.livetime=600 # - Cluster (expiration in milliseconds) exo.cache.portal.description.maxnodes=5000 exo.cache.portal.description.expiration=600000 # Portal Cache Configuration - Page Service # - Standalone (live time in seconds) exo.cache.portal.page.maxsize=5000 exo.cache.portal.page.livetime=600 # - Cluster (expiration in milliseconds) exo.cache.portal.page.maxnodes=5000 exo.cache.portal.page.expiration=600000 # Portal Cache Configuration - Template Service # - Standalone (live time in seconds) exo.cache.portal.TemplateService.capacity=3000 exo.cache.portal.TemplateService.liveTime=3600 # Portal Cache Configuration - ResourceBundleData # - Standalone (live time in seconds) exo.cache.portal.ResourceBundleData.capacity=3000 exo.cache.portal.ResourceBundleData.liveTime=-1
The specific configuration of Portal caches can be found in the files:
i. For MOPSessionManager, NavigationService, DescriptionService, PageService:
$PLATFORM_TOMCAT_HOME/webapps/portal.war!/WEB-INF/conf/portal/portal-configuration.xml
(Tomcat).
$PLATFORM_JBOSS_HOME/standalone/deployments/platform.ear!/exo.portal.web.portal.war!/WEB-INF/conf/portal/portal-configuration.xml
(JBoss).
ii. For TemplateService and ResourceBundle:
$PLATFORM_TOMCAT_HOME/webapps/platform-extension.war!/WEB-INF/conf/platform/cache-configuration.xml
(Tomcat).
$PLATFORM_JBOSS_HOME/standalone/deployments/platform.ear!/platform-extension-webapp.war!/WEB-INF/conf/platform/cache-configuration.xml
(JBoss).
The MOPCache caches all model objects of the portal (MOP), such as sites, pages and preferences. When the cached MOP objects are called, they will be directly retrieved from cache rather than the database.
The cached MOP object is invalidated when it is modified or removed.
The MOPCache size equals to the number of MOP objects in cache.
The maximum heap size cannot be calculated exactly because the MOPCache caches many types of MOP objects that are different in size.
The NavigationCache caches data of navigation. When the cached navigation is accessed, it will be retrieved from cache rather than the database.
The cached navigation is invalidated when it is modified or destroyed.
The NavigationCache size equals to the number of navigations in cache.
The size of each cached navigation is dependent on length of its string field. The navigation size is often less than 250 bytes, so the maximum heap size equals to the cache size multiplied by 250 bytes.
The DescriptionCache caches a pair of name-description. Accordingly, the cached pair of name-description will be taken directly from cache rather than the database.
The cached pair of name-description is invalidated when the data of this name-description pair is modified or destroyed.
The DescriptionCache size equals to the number of name-description pairs in cache.
The maximum heap size is dependent on length of name and description of each pair stored in cache. The size of a name-description pair is often less than 200 bytes, so the maximum heap size equals to the cache size multiplied by 200 bytes.
The PageCache caches data of a page when one user visits it for the first time. When the cached page is visited, it will be loaded from cache rather than the database.
The cached page is invalidated when the page is destroyed. When the page is modified, its new data will be updated into cache.
The PageCache size equals to the number of pages in cache.
The maximum heap size is dependent on some dynamic attributes of a page, for example, site name that contains the page, length of access/edit permission, display name of page.
The TemplateCache caches all Groovy templates of the portal by its template path and ResourceResolver. When the cached template is called, it will be loaded from cache rather than the database or the file system.
The cached Groovy template is invalidated when it is removed or modified.
The TemplateCache size equals to the number of Groovy templates in cache.
The maximum heap size is dependent on length of Groovy template. The size of a Groovy template is often less than 100KB, so the maximum heap size equals to the cache size multiplied by 100KB.
The ResourceBundleCache caches all resource bundles by name and locale. When the cached resource bundle is called, it will be directly loaded from cache rather than the database or the file system.
The cached resource bundle is invalidated when it is removed or modified.
The ResourceBundleCache size equals to the number of resource bundles in cache.
The maximum heap size is dependent on the size of resource bundle. The size of a resource bundle is often less than 100KB, so the maximum heap size equals to the cache size multiplied by 100KB.