7 Using Discoverer Viewer with Oracle Web Cache

This chapter describes how to use Oracle Web Cache to enhance Discoverer Viewer performance, and contains the following topics:

7.1 About Oracle Web Cache

Oracle Web Cache is a content-aware server accelerator, or reverse proxy server, that improves the performance, scalability, and availability of Web sites. By storing frequently accessed pages in memory, Oracle Web Cache eliminates the need to repeatedly process requests for those pages on middle-tier servers and databases.

You can also use Oracle Web Cache for load balancing a multiple-machine installation. For more information, see Chapter 6, "Managing Discoverer in a Multi-Machine or Multi-Instance Environment.")

You manage Oracle Web Cache using Oracle Enterprise Manager Fusion Middleware Control.

To view Oracle Web Cache pages in Fusion Middleware Control:

  1. Display the Oracle Fusion Middleware Control Home page. For more information, see Section 4.1.2, "How to start Fusion Middleware Control and display the Farm Home page."

  2. Navigate to the Web Cache node under the Web Tier node in the navigation pane.

Oracle Web Cache sits in front of application Web servers, caching their content and providing that content to Web browsers that request for the content. When Web browsers access the Web site, they send HTTP protocol or HTTPS protocol requests to Oracle Web Cache. Oracle Web Cache, in turn, acts as a virtual server to the application Web servers. If the requested content has changed, Oracle Web Cache retrieves the new content from the application Web servers.

Figure 7-1 Oracle Web Cache overview

Surrounding text describes Figure 7-1 .

For more information about Oracle Web Cache, see Oracle Fusion Middleware Administrator's Guide for Oracle Web Cache.

Notes

7.2 What are the benefits of Oracle Web Cache?

Using Oracle Web Cache:

  • Improves performance

    Running on inexpensive hardware, Oracle Web Cache can increase the throughput of a Web site by several orders of magnitude. In addition, Oracle Web Cache significantly reduces response time to browser requests by storing documents in memory and by serving compressed versions of documents to browsers that support the GZIP encoding method.

  • Improves scalability

    In addition to unparalleled throughput, Oracle Web Cache can sustain thousands of concurrent browser connections. The result is that visitors to a site see fewer application Web server errors, even during periods of peak load.

  • Offers high availability

    Oracle Web Cache supports content-aware load balancing and fail over detection. These features ensure that documents not in the cache (referred to as 'cache misses') are directed to the most available, highest-performing Web server in the cluster. Further features guarantee performance and provide surge protection when application Web server load increases.

  • Offers cost savings

    Fewer application Web servers are required to meet the challenges posed by traffic spikes and denial of service attacks. As a result, Oracle Web Cache offers a simple and inexpensive means of reducing a Web site's cost for each request.

  • Reduces network traffic

    Most requests are resolved by Oracle Web Cache, reducing traffic to the application Web servers. The cache also reduces traffic to back-end databases located on computers other than the application Web server.

For more information about the benefits of using Oracle Web Cache, see Oracle Fusion Middleware Administrator's Guide for Oracle Web Cache.

7.3 How does Oracle Web Cache work?

Oracle Web Cache uses cacheability rules to determine which documents to cache. A cacheability rule indicates whether you want the documents specified within a particular URL to be cached or not cached. Cacheability rules are defined using regular expressions (for more information about Oracle's implementation of regular expressions, see Oracle Fusion Middleware Administrator's Guide for Oracle Web Cache).

The document specified within a URL included in a cacheability rule is not actually cached until a browser requests it.

Figure 7-2 The URL and document request process

Surrounding text describes Figure 7-2 .

Key to figure:
a. The first time a browser requests a particular URL, Oracle Web Cache detects that the required document is not in the cache (referred to as a cache miss). Oracle Web Cache therefore forwards the request to an application Web server, which sends the request to the database.
b. The database returns the data to the application Web server, which forwards a document and its URL to Oracle Web Cache. If the URL is specified as one of the URLs to cache, Oracle Web Cache caches the document for subsequent requests.
c. The next time a browser requests the URL, Oracle Web Cache detects that the document is in the cache (referred to as a cache hit).
d. Oracle Web Cache serves the document from the cache to the browser.

7.4 When to use Discoverer Viewer with Oracle Web Cache

Using Discoverer Viewer with Oracle Web Cache to improve Web site performance, scalability, and availability would be most appropriate in the following cases:

  • Where Web sites only use public workbooks

  • Where Web sites access data that is relatively static

  • Where the Discoverer manager or workbook creator has access to Oracle Web Cache and can refresh the cache after changes to workbooks

After installing Oracle BI Discoverer, you must manually specify caching rules, as described in Section 7.5.1, "How to create Discoverer caching rules".

For security reasons, Oracle Web Cache only caches Discoverer Viewer pages that are accessed over a public connection.

Oracle Web Cache is particularly suitable for optimizing Discoverer Viewer performance when controlling access to data is relatively unimportant (for example, where the same public connections are used by several users to access workbooks). Oracle Web Cache is less suitable in restricted environments where controlling access to data is an issue (for example, where private connections are used by individuals to access their own workbooks). If you are considering using Oracle Web Cache in a restricted environment, note that a malicious user might be able to access pages that have been cached for another user. For more information about Oracle BI Discoverer security in general, see Chapter 13, "Maintaining Security with Oracle BI Discoverer."

7.5 How to use Discoverer Viewer with Oracle Web Cache

To use Discoverer Viewer with Oracle Web Cache, do the following:

7.5.1 How to create Discoverer caching rules

Although Oracle Web Cache is installed with Oracle Fusion Middleware, it is disabled by default. To make use of Oracle Web Cache, you must create caching rules. For example, you might want to cache Discoverer Viewer pages, or use a Discoverer middle-tier machine to provide load balancing.

To enable Oracle Web Cache for Discoverer Viewer:

  1. Display the Discoverer Home page in Fusion Middleware Control. For more information, see Section 4.1.2, "How to start Fusion Middleware Control and display the Farm Home page."

  2. Navigate to the Web Cache node (for example, wc1) in the navigation pane to display the Web Cache Home page.

  3. From the Web Cache menu, select Administration, and then select Caching Rules.

  4. In the Caching Rules page that is displayed, click Create, to display the Create Caching Rule page.

  5. Create a rule for caching URLs containing /discoverer/app.

    1. In the Name field, enter a unique name (for example, Discoverer caching rule).

    2. From the Match URL By drop-down list, select Path Prefix, and enter /discoverer/app in the adjacent text box.

      Do not change the default values of the other fields.

    3. Click OK to save the rule.

      A confirmation message is displayed at the top of the page.

  6. Create a rule for URLs containing /discoverer/viewer.

    1. In the Name field, enter a unique name (for example, Discoverer viewer caching rule)

    2. From the Match URL By drop-down list, select Path Prefix, and enter /discoverer/viewer in the adjacent text box.

    3. In HTTP Methods region, clear the GET check box.

    4. Select the GET with query string check box.

    5. Select the POST Body Expression check box.

    6. Click OK to save the rule.

      A confirmation message is displayed at the top of the page.

  7. Create a rule for URLs containing /discoverer/servlet/GraphBeanServlet.

    1. In the Name field, enter a unique name for the rule.

    2. From the Match URL By drop-down list, select Path Prefix, and enter /discoverer/servlet/GraphBeanServlet in the adjacent text box.

    3. In HTTP Methods region, clear the GET check box.

    4. Select the GET with query string check box.

    5. Select the POST Body Expression check box.

    6. Click OK to save the rule.

      A confirmation message is displayed at the top of the page.

  8. Display the Multi Versioning tab.

  9. Add the User-Agent header to the list of selected headers.

  10. Click OK.

  11. Click Apply.

    Oracle Web Cache now caches Discoverer Viewer pages.

7.5.2 How to enable Oracle Web Cache for Discoverer Viewer

Although Oracle Web Cache is installed with Oracle Business Intelligence, it is disabled for use with Discoverer Viewer by default. To make use of Oracle Web Cache with Discoverer, you must enable it. For example, you might want to cache Discoverer Viewer pages, or use a Discoverer middle tier machine to provide load balancing.

Note: Although Fusion Middleware Control might display the status of Oracle Web Cache as 'Enabled' in the Components table, this does not mean that it is enabled for use with Discoverer Viewer. You must ensure that the Use WebCache check box is selected on the Discoverer Viewer Configuration page, as described below.

To enable Oracle Web Cache for Discoverer Viewer:

  1. Display the Discoverer Home page in Fusion Middleware Control (for more information, see Section 4.1.3, "How to display the Fusion Middleware Control Discoverer Home page and Discoverer component Home pages").

  2. In the Components area, select the Discoverer Viewer link in the Name column.

  3. Click Configure to display the Discoverer Viewer Configuration page.

  4. Select the Use WebCache check box.

  5. Click Apply.

    Oracle Web Cache is now enabled and starts caching Discoverer Viewer pages.

7.5.3 How to configure Discoverer Viewer to enable maximum caching

To maximize caching of Discoverer Viewer pages, you can optionally limit the end user options available in Discoverer Viewer. For example, if you remove the worksheet layout toolbar, you limit the amount of worksheet manipulation allowed by end users, which makes it easier for Oracle Web Cache to cache pages.

To configure Discoverer Viewer to enable maximum caching:

  1. Display the Fusion Middleware Control Discoverer Home page for the machine to configure (for more information, see Section 4.1.3, "How to display the Fusion Middleware Control Discoverer Home page and Discoverer component Home pages").

  2. In the Components area, select the Discoverer Viewer link in the Name column.

  3. Click Configure.

  4. In the Viewer Delay Times area, set Query Progress Page and Request to a high value (for example, 60 seconds).

  5. Click Apply to return to the Discoverer Viewer Home page.

  6. Click Customization.

  7. In the Action Links area of the Layout region, clear as many of the check boxes as possible, making sure that you enable the end users to perform any essential tasks (for example, Print and Send as Email).

  8. In the Others area, clear the Tool Bars check box.

  9. Click Apply to save the changes you have made.

  10. Run Discoverer Viewer and open a workbook.