Oracle® Application Server Portal User's Guide
10g Release 2 (10.1.4) B13809-04 |
|
Previous |
Next |
As with any modern Web-based application, the browser response time for OracleAS Portal pages largely depends on the number of user requests and the hardware employed to service them. Displaying a single page to a user may require many separate transactions, from verifying whether the user has permission to view the page, to loading the images that appear on the page, to calling a style sheet that contains formatting information for the page, and so on.
Changing the hardware deployed for a production portal is usually a difficult task, so administrators must rely on performance tuning the portal to maximize the performance from the available hardware. Performance tuning can take on many facets especially in OracleAS Portal's multi-tier architecture. Each tier provides tuning options that can degrade performance if not configured correctly.
OracleAS Portal provides several caching options so that page designers and administrators can optimize the performance of the pages they design. It is important that these caching options are analyzed, for pages, portlets, and templates, before you deploy your portal. This step will ensure that the optimum caching policy is employed on a page by page and portlet by portlet basis, and make sure that your portal is as performant as possible when it is finally deployed in production.
This chapter provides a short overview of the caching options available to page designers and administrators. It includes the following subsections:
The holistic processes involved for performance tuning are not discussed in this chapter. In-depth performance advice and analysis for OracleAS Portal is available from the Performance page on the OracleAS Portal section of the Oracle Technology Network, http://www.oracle.com/technology/products/ias/portal/performance_10g1014.html
Intended Audience
The content of this chapter is intended for users with at least the Manage privilege on the pages you will work with. If a particular task requires, or can be performed under, different privileges, those privileges will be listed before the steps of that task. For more information on page privileges, see Section B.3, "Page and Tab Privileges".
Page caching options are useful for speeding up page response times. This section describes portlet caching options and how to apply them. It includes the following sub-sections:
To change how a page is cached:
Go to the page where you will change caching options.
For information on locating a page, see Section 9.1, "Locating Pages in OracleAS Portal".
Switch to Edit mode.
Click the Properties link next to Page in the page toolbar.
Be sure to click the link for the page rather than the page group.
Go to the Page Caching section of the Main tab, and select a page caching option.
See Section 22.1.2, "Page Caching Options" for a description of each caching option.
Click OK to save your changes.
Table 22-1 lists and describes the page caching options (Edit Page: Main tab):
Cache Page Definition And Content at User Level For [ ] Minutes
Cache Page Definition Only at System Level
Cache Page Definition And Content at System Level For [ ] Minutes
Don't Cache
Table 22-1 Page caching options
Option | Description |
---|---|
Caches the page definition for each user, in both OracleAS Web Cache and the Portal Cache. The page definition includes:
Choose this option for pages with dynamic portlet content and where the page definition is user specific. For example, user specific page definitions might contain:
Note that:
|
|
Cache Page Definition And Content at User Level For [ ] Minutes |
Caches the page definition (as described in the previous option), and the assembled page's content, including all portlet content, for a specified period of time, for each user. This is called user-level expiry-based caching. Choose this option for pages with portlets that do not change within the specified time period and where the page content (either the page definition or portlet content) is user specific. Note that:
|
Caches the page definition once for all users. The page definition is the same for all users and includes:
Choose this option for pages with dynamic portlet content, where the page definition is the same for all users. This option greatly reduces storage requirements and improves performance. It eliminates regeneration of the page definition on every request, by any user. The page definition is generated the first time any user accesses the page. The portlet content is retrieved and the page is assembled on each request and this allows the page to display dynamic portlet content. This option can be used when:
Do not choose this option when:
If page performance is critical, you might use this option if the page definition contains certain user specific items: - Items with item level security, - Navigation items (Page Link, Page Path, Login/Logout), - Portal Smart Link items (Edit), - Portal Smart Text (Current User). If you do this, these items are displayed the same to all users, regardless of their access privileges. Whilst this is not ideal visually, users can still perform only the actions for which they have the appropriate access privileges. For example, if your page contains an Edit link, every user viewing the page sees the Edit link even if they do not have Edit privileges. All security checks are deferred until a user clicks on the link. Note: This option is available for Standard, Mobile, and JSP pages only. |
|
Cache Page Definition and Content at System Level for [ ] Minutes |
Caches the page definition (as described in the previous option), and the assembled page's content, including all portlet content, for a specified period of time, for all users. This is called system-level expiry-based caching. Choose this option for pages with portlets that do not change within the specified time period and where the page content (both the page definition and portlet content) is the same for all users. Note that:
Do not choose this option when:
|
Don't Cache |
Note that the use of this option will adversely impact portal performance. Do not use this option except where absolutely necessary. Do not use this option on frequently accessed pages. Keep the number of pages that require this option to a minimum. You may want to disable page caching in the following circumstances:
|
You can manually clear the cache entries associated with a page. For example, this might be useful if you revoke a user's privileges on a page and you want to make sure that your privilege level changes are applied immediately. If you do not clear the cache, the user will still be able to access the page if it is in the cache.
To clear the cache for a page:
Portlet caching options are useful for speeding up page response times. This section describes portlet caching options and how to apply them. It includes the following sub-sections:
To change how a portlet is cached:
Go to the page where the portlet instance is located.
For information on locating a page, see Section 9.1, "Locating Pages in OracleAS Portal".
Switch to Edit mode.
Click the Actions icon (Figure 22-1) next to the portlet instance.
On Actions page, click the Edit Portlet Instance link.
In the Portlet Caching section, specify how this portlet instance is cached.
For more detail, see Section 22.2.2, "Portlet Caching Options".
In the Portlet Caching Level section, specify a caching level for this portlet instance.
For more detail and a description of each caching level, see Section 22.2.3, "Portlet Caching Level Options".
Click OK to save your changes and return to the page.
Table 22-2 lists and describes Portlet Caching options on the Edit Portlet Instance page:
Rely on Portlet to Implement Caching
Force Portlet to be Cached for [ ] Minutes
Table 22-2 Portlet Caching Options
Table 22-3 lists and describes Portlet Caching Level options on the Edit Portlet Instance page:
The Portlet Caching Level option enables you to modify the caching level in either the caching policy defined by the portlet author, or the forced caching policy (see Force Portlet to be Cached for [ ] Minutes in Table 22-2, "Portlet Caching Options").
This option does not force the portlet to be cached. This option controls whether user or system level information is sent in the portlet request.
The Portlet Caching Level option is not available when:
The portlet itself specifies system-level caching. If this is the case, the portlet is always cached at the system-level.
The page is cached with the option Cache Page Definition and Content at System Level for [ ] Minutes. When the page is cached at this level, portlet instances on the page can display only public data.
Table 22-3 Portlet Caching Level Options
Template caching options are useful for speeding up template response times. Specifically, for Portal Templates for items, caching speeds up the dynamic assembly of the item within the context of its Portal Template.
Template caching options are not available for Portal Templates for pages. Pages based on templates use their own caching option not the template's caching option. See Section 22.1, "Page Caching".
This section describes template caching options and how to apply them. It includes the following sub-sections:
Portal Template caching options display only for Portal Templates for items. A Portal Template for items is a Portal Template that contains an Item Placeholder item type. For Portal Templates for items, template caching options control the caching level of the template definition and template content.
Note: If, in a Portal Template for items, the item placeholder is deleted, hidden, or expired, caching options nonetheless continue to display on the Main tab. They display until the item is thoroughly removed through a system purge. |
To change how Portal Templates for items are cached:
From the Page Groups portlet Work In drop-down list, select the page group that owns the Portal Template for items.
By default, the Page Groups portlet is located on the Build tab of the Portal Builder page.
Under Portal Templates in the Layout & Appearances section, click the link to the Portal Template for items.
This opens the template in Edit mode.
Click the Template: Properties link at the top of the page.
Click the Main tab to bring it forward.
Select a template caching option.
See Section 22.3.2, "Portal Template Caching Options" for a description of each caching option.
Click OK to save your changes and return to the template.
Table 22-4 lists and describes the template caching options (Edit Portal Template: Main tab):
Cache Template Definition Only at User Level
Cache Template Definition and Content at User Level for [ ] Minutes
Cache Template Definition Only at System Level
Cache Template Definition and Content at System Level for [ ] Minutes
Don't Cache
Table 22-4 Template caching options
Option | Description |
---|---|
Caches the template definition for each user, in both OracleAS Web Cache and the Portal Cache. The definition includes:
Choose this option for templates with dynamic portlet content and where the template definition is user specific. For example, user specific template definitions might contain:
This option eliminates template definition regeneration on every request by a user. The template definition is generated the first time a user accesses the template. However, portlet content is retrieved and the template is assembled on each request. This allows the template to display dynamic portlet content. Note that:
|
|
Cache Template Definition And Content at User Level For [ ] Minutes |
Caches the template definition (as described in the previous option), and the assembled template's content, including all portlet content, for a specified period of time, for each user. This is called user-level expiry-based caching. Choose this option for template with portlets that do not change within the specified time period and where the template content (either the template definition or portlet content) is user specific. Note that:
|
Caches the template definition once for all users. The template definition is the same for all users and includes:
Choose this option for template with dynamic portlet content, where the template definition is the same for all users. This option greatly reduces storage requirements and improves performance. It eliminates regeneration of the template definition on every request, by any user. The template definition is generated the first time any user accesses the template. The portlet content is retrieved and the template is assembled on each request and this allows the template to display dynamic portlet content. This option can be used when:
Do not choose this option when:
If template performance is critical, you might use this option if the template definition contains certain user specific items: - Items with item level security - Navigation items: Page Link, Page Path, Login/Logout - Portal Smart Link items: Edit - Portal Smart Text: Current User If you do this, the items are displayed the same to all users, regardless of their access privileges. Whilst this is not ideal visually, users can still perform only the actions for which they have the appropriate access privileges. |
|
Cache Template Definition and Content at System Level for [ ] Minutes |
Caches the template definition (as described in the previous option), and the assembled template's content, including all portlet content, for a specified period of time, for all users. This is called system-level expiry-based caching. Choose this option for templates with portlets that do not change within the specified time period and where the template content (both the template definition and portlet content) is the same for all users. Note that:
Do not choose this option when:
|
Disables template caching. With this option you do not gain any of the performance benefits provided by caching. The use of this option will adversely impact portal performance. Do not use this option except where absolutely necessary. Do not use this option on frequently accessed templates. Keep the number of templates that require this option to a minimum. You may want to disable template caching in the following circumstances:
|
You can manually clear the cache entries associated with a Portal Template. For example, this might be useful if you revoke a user's privileges on an item associated with a template and you want to make sure that your privilege level changes are applied immediately. If you do not clear the cache, the user will still be able to access the item if the template is in the cache.
To clear the cache for a Portal Template:
From the Page Groups portlet Work In drop-down list, select the page group that owns the Portal Template.
By default, the Page Groups portlet is located on the Build tab of the Portal Builder page.
Under Portal Templates in the Layout & Appearances section, click the link to the Portal Template.
This opens the template in Edit mode.
Click the Template: Properties link at the top of the page.
Do one of the following:
(Portal Template for items only) Click the Main tab, and select Clear Cache.
(Portal Template for pages and items) Click the Access tab, and select Clear Cache.
Performance issues are not discussed in this chapter. In-depth performance advice and analysis for OracleAS Portal is available from the Performance page on the OracleAS Portal section of the Oracle Technology Network, http://www.oracle.com/technology/products/ias/portal/index.html