Cache Management
Note: If cache management requires global cache management across various nodes then refer to the Global Cache Flush Support section for more details.
A great deal of information in the system changes infrequently. In order to avoid accessing the database every time this type of information is required by an end-user, the system maintains a cache of static information on the web application server. In addition to the web application server cache, information is also cached on each client browser.
Server Cache
Note: Maintenance of the cache is performed automatically by Oracle Utilities Smart Grid Gateway. Whilst there are commands to force refreshes of the cache, these are designed for administrator and developer use only. Additional security setups are required to enable individual users to access to the facilities below.
The cache is populated the first time any user accesses a page that contains cached information. For example, consider a control table whose contents appear in a drop-down on various pages. When a user opens one of these pages, the system verifies that the list of records exists in the cache. If so, it uses the values in the cache. If not, it accesses the database to retrieve the records and saves them in the cache. In other words, the records for this control table are put into the cache the first time they are used by any user. The next user who opens one of these pages will have the records for this control table retrieved from the cache (thus obviating the database access).
The following points describe the type of data that is cached on the web server:
• Field labels. This portion of the cache contains the labels that prefix fields on the various pages in the system.
• System information. This portion of the cache contains installation and license key information as well as basic information about the various application services (for example, the URL’s that are associated with the various pages).
• Menu items. This portion of the cache contains the menu items.
• Drop-down contents. This portion of the cache contains the contents of the various drop-downs that appear throughout the system.
• XSL documents. This portion of the cache contains each page’s static HTML.
• Portal information. This portion of the cache contains information about which zones are shown on the various pages.
The contents of the cache are cleared whenever the web application server is restarted or as automatically refreshed as controlled by the fieldValuesAge parameter on the web application server Web Application Server Configuration Files configuration file. This means that fresh values are retrieved from the database upon first use by end users.
If you change the database after the cache is built and the information you changed is kept in the cache, users may continue to see the old values. If you don’t want to restart your web application server, you can either use the relevant operation on the JMX FlushBean Mbean available on the web application server or issue a custom browser URL to issue the appropriate command (see below). See Web Application Server JMX Reference for details.
Note: To use the browser URL for the resetting of the cache the user must be logged on to Oracle Utilities Smart Grid Gateway’s browser interface and have access to the F1ADMIN application service.
Note: It is recommended that the Refresh all cache is used for non-production and production systems. The other commands are designed for primarily for development use only. Refer to the Oracle Utilities SDK documentation for more information about the options available with the commands.
Note: When using these commands, the cache will be reloaded over time with fresh data. As the data is loaded there is a negligible delay in each transaction that reloads data into the cache for the first time. Therefore, it is recommended not to execute this command frequently.
Client Cache
In addition to the server cache, information is cached on each user browser. After clearing the cache that’s maintained on the web application server, it is recommended to also clear the cache that is maintained on the client browser (if possible). To do this, follow the following steps:
Note: Each user’s cache is automatically refreshed as controlled by the maxAge and maxAgeI parameters in the web application server web.xml configuration file (see Web Application Server Configuration Files for details). We recommend that you set this parameter to 1 second on development / test environments and 28800 seconds (8 hours) on production environments.