Skip Headers
Oracle® Application Server Web Cache Administrator's Guide
10
g
Release 2 (10.1.2)
Part No. B14046-01
Home
Solution Area
Index
Next
Contents
List of Examples
List of Figures
List of Tables
Title and Copyright Information
Send Us Your Comments
Preface
Audience
Documentation Accessibility
Structure
Related Documents
Conventions
What's New in OracleAS Web Cache?
New Features in 10
g
Release 2 (10.1.2)
New Features in 10
g
(9.0.4)
New Features in Release 2 (9.0.2 and 9.0.3)
Part I Getting Started with OracleAS Web Cache
1
Introduction to OracleAS Web Cache
What Is the Big Picture for Caching?
Oracle's Solution to Web Site Performance Issues
How Reverse Proxy Web Caching Works
Benefits of Web Caching
Features of OracleAS Web Cache
Whole-Page Caching for Static and Dynamic Content Caching
Cache Invalidation and Expiration
Performance Assurance
Virtual Hosting
Virtual Host Sites
ESI Provider Sites
Site Definitions and Site-to-Server Mappings
How OracleAS Web Cache Locates Application Web Severs or Proxy Servers
Cache Clustering
Cache Hierarchies
Origin Server Surge Protection, Load Balancing, Failover, and Session Binding
Surge Protection
Stateless Load Balancing
Backend Failover
Session Binding (Stateful Load Balancing)
Security
Compression
Auto-Restart
Compatibility with Oracle Application Server Components
2
Caching Concepts
Cache Population
How OracleAS Web Cache Processes Requests with a Range Request-Header Field
Cache Consistency and Performance Assurance
Invalidation
Invalidation in Hierarchies
Invalidation in Cache Clusters
Expiration
HTTP Cache Validation
Performance Assurance Heuristics
Caching Dynamically Generated Content
Multiple Versions of the Same Object
Personalized Attributes
Controlling How Personalized Attribute Requests Are Served by the Cache
Session Information
Excluding the Value of Embedded URL or POST Body Parameters
Substituting Session Information in Session-Encoded URLs
Controlling How Session Requests Are Served by the Cache
Content Assembly and Partial Page Caching
Page Assembly Components
Fragmentation with the Inline and Include Tags
Using Inline for Non-Fetchable Fragmentation
Using Inline for Fetchable Fragmentation
Using Include for Fragmentation
Selecting the Fragmentation Mechanism for Your Application
Referer Request-Header Field
Cookie Management for Template Pages and Fragments
ESI Features
ESI for Java (JESI)
Oracle JDeveloper Support for ESI and JESI
Request and Response-Header Fields
Oracle-ECID Request-Header Field
Surrogate-Capability Request-Header Field
Server Response-Header Field
Surrogate-Control Response-Header Field
Surrogate-Key Response-Header Field
3
Cache Clustering
Overview of Cache Clusters
Benefits of Cache Clusters
How Cache Clusters Work
How Cache Content Is Distributed
Failure Detection and Failover
4
OracleAS Web Cache Security
About OracleAS Web Cache Security
OracleAS Web Cache Security Model
Restricted Administration
Secure Sockets Layer (SSL)
SSL Acceleration
Classes of Users and Their Privileges
Resources Protected
Authorization and Access Enforcement
Leveraging Oracle Identity Management Infrastructure
Oracle Application Server Single Sign-On Servers
Oracle Application Server Single Sign-On Partner Applications (mod_osso)
Configuring OracleAS Web Cache Security
5
OracleAS Web Cache Topologies
Common OracleAS Web Cache Configuration
Specialized Topologies
Deploying a Distributed Cache Hierarchy
Deploying OracleAS Web Cache for High Availability Without a Hardware Load Balancer
Deploying OracleAS Web Cache With a Layer 7 Switch
Security Topologies
Deploying OracleAS Web Cache with Firewalls
Deploying OracleAS Web Cache with SSL Acceleration Hardware
Routing HTTPS Requests to a Dedicated Cache
Routing HTTPS Requests Around OracleAS Web Cache
Routing Single Sign-On Server Requests
6
Introduction to Administration Tools
Overview of Tools for Managing OracleAS Web Cache within Oracle Application Server
Managing OracleAS Web Cache with Oracle Enterprise Manager 10
g
Application Server Control Console
Accessing the OracleAS Web Cache Pages within Application Server Control Console
Using the Application Server Control Console: Web Cache Home Page
Using the Application Server Control Console: Web Cache Performance Page
Using the Application Server Control Console: Web Cache Administration Page
Using the Application Server Control Console Online Help
Gathering Historical Metrics Data for OracleAS Web Cache with Oracle Enterprise Manager 10
g
Grid Control
Accessing the OracleAS Web Cache pages within Grid Control Console
Using the Grid Control Console: Web Cache Home Page
Using the Grid Control Console: Web Cache Performance Page
Using the Grid Control Console Online Help
Managing Processes with Oracle Process Manager and Notification (OPMN)
Overview of Tools for Standalone Configurations
Managing OracleAS Web Cache with OracleAS Web Cache Manager
Starting OracleAS Web Cache Manager
Navigating OracleAS Web Cache
Navigator Frame
Right Frame
The Cache Operations Page
Applying Static and Dynamic Configuration Changes
Managing Processes with webcachectl
Understanding the OracleAS Web Cache Configuration Files
Configuration and Administration Tasks at a Glance
Script for Setting File Permissions on UNIX
7
Starting and Stopping OracleAS Web Cache
Overview of Starting and Stopping for OracleAS Web Cache
Starting and Stopping the Cache In an Oracle Application Server Configuration
Starting and Stopping Using opmnctl
Starting and Stopping Using the Application Server Control Console
Starting and Stopping the Cache In a Standalone Configuration
Starting and Stopping with webcachectl
Starting and Stopping Using OracleAS Web Cache Manager
Part II Configuration and Administration of OracleAS Web Cache
8
Setup and Configuration
Using the Default Configuration
Tasks for Setting Up OracleAS Web Cache
Task 1: Start OracleAS Web Cache
Task 2: Modify Security Settings
Task 3: Configure Auto-Restart Settings
Task 4: Configure Network Time Outs
Task 5: Set Resource Limits
Cache Memory
Connection Limit
Cached Object Size Limit
Task 6: Configure OracleAS Web Cache with Listening Ports for Browser Requests
Adding a Listening Port
Changing Site Configuration
Configuring Other Oracle Application Server Components with the Listening Port
Task 7: Provide Directives to Oracle HTTP Server
Task 8: Configure OracleAS Web Cache with Operations Ports
Modifying Operations Ports
Configuring Other Oracle Application Server Components with Operations Ports
Starting the admin Server Process After an Administration Port Change
Starting the cache Server Process After an Invalidation or Statistics Port Change
Task 9: Configure Origin Server, Load Balancing, and Failover Settings
Task 10: Configure Web Site Settings
Create Site Definitions
Map Sites to Origin Servers
Configure Error Pages
Bind a Session to an Origin Server
Default Site Settings
Virtual Host Site Example Settings
ESI Provider Site Example Settings
Task 11: Specify Caching Rules
Task 12: Restart OracleAS Web Cache
Configuring for High Availability Without a Hardware Load Balancer
OracleAS Web Cache as a Software Load Balancer
Operating System Load Balancing Support
Configuring Microsoft Network Load Balancing
Advanced Configuration Topics
Ensuring That ClientIP Headers Are Valid
Configuring HTTP Request Header Limits
Running webcached with Root Privilege
Configuring Root Privilege for Privileged Ports and More than 1,024 File Descriptors
Configuring Root Privilege for the Current User
Reverting Permissions
9
Configuring OracleAS Web Cache for HTTPS Requests
Task 1: Create Wallets
Task 2: Configure an HTTPS Listening Port
Task 3: Configure HTTPS Operations Ports for the Cache
Task 4: Configure HTTPS Port and Wallet Location for the Origin Server
Task 5: Configure a Site to Accept HTTPS Requests
Task 6: Modify ssl.conf for Keep-Alive Connections
Task 7: (Optional) Require Client-Side Certificates
Task 8: (Optional) Permit Only HTTPS Requests for a URL or Set of URLs
Task 9: Restart OracleAS Web Cache
10
Configuring Cache Clusters
Configuring a Cache Cluster
Configuration Prerequisites
Task 1: Configure Cache Cluster Settings
Task 2: Add Caches to the Cluster
Task 3: Enable Tracking of Session Binding
Task 4: Propagate the Configuration to Cluster Members
Removing Caches from a Cluster
Configuring Administration and Invalidation-Only Clusters
Propagating Configuration Changes to Cache Cluster Members
11
Configuring a Hierarchy of Caches
Configuring a Distributed Cache Hierarchy
Configuring an ESI Cache Hierarchy
Additional Hierarchy Configuration for a Cache Cluster
12
Creating Caching Rules
Caching Rules Overview
Rule Creation
Selectors
File Extension Expression Type
Path Prefix Expression Type
Regular Expression
Caching Policy
Cache-Key Policy
Priority
Default Caching Rules
Configuring Caching Rules and Rule Association
Task 1: Create Caching Rules
Task 2: Prioritize Rules
Task 3: (Optional) Associate Multiple Rules with Caching Policy Features
Additional Configuration for Cache Policy Features
Configuring Expiration Policies
Configuring Cookie Definitions for Multiple-Version Objects Containing Cookies
Recognizing Similar Browser Types for Multiple-Version Objects Containing HTTP Request Headers
Configuring OracleAS Web Cache to Exclude the Value of Embedded URL or POST Body Parameters
Configuring Session or Personalized Attribute Caching Policies
Configuring Support for Session-Encoded URLs
Configuring Support for Personalized Attributes
Example: Personalized Page Configuration
Configuring Rules for Popular Pages with Session Establishment
Using the Surrogate-Control Response Header as an Alternative to Caching Rules
Configuring Rules for Content Assembly and Partial Page Caching
Enabling Partial Page Caching
Using ESI for Simple Personalization
Examples of ESI Usage
Example of a Portal Site Implementation
Example of Simple Personalization with Variable Expressions
13
Sending Invalidation Requests
Invalidation from External Sources
Role of the invalidator and administrator Accounts
Format of Invalidation Requests
Methods for Sending Requests
Telnet to Send Invalidation Requests
Invalidation Request Syntax
Invalidation Response Syntax
Invalidation Preview Request Syntax
Invalidation Preview Response Syntax
Oracle Enterprise Manager 10
g
Application Server Control Console or OracleAS Web Cache Manager to Send Invalidation Requests
Submitting Basic Invalidation Requests
Submitting Advanced Invalidation Requests
Applications for Automated Invalidation Requests
Database Triggers for Automated Invalidation Requests
Scripts for Automated Invalidations
Invalidation Examples
Example: Invalidating One Object
Example: Invalidating Multiple Objects
Example: Invalidating a Subtree of Objects
Example: Invalidating All Objects for a Web Site
Example: Invalidating Objects Using Prefix Matching
Example: Invalidating Objects Using Substring and Query String Matching
Example: Invalidating Objects Using Search Key Matching
Example: Propagating Invalidation Requests Throughout a Cache Cluster
Example: Previewing Invalidation
Inline Invalidation in HTTP Responses
Example: Using Inline Invalidation
Reducing Invalidation Overhead
Send Basic Invalidation Requests for Invalidating One Object
Use Substring Matching for Invalidating Multiple Objects in Advanced Invalidations
Enhance Query String Invalidations
Using Search Keys in Surrogate-Key Response Header and Invalidation Requests
14
Monitoring Cache Trends with Statistics
Monitoring OracleAS Web Cache Health
Configuring End-User Performance Monitoring
Enabling End-User Performance Monitoring
Selecting URLs to Monitor
Gathering End-User Performance Data
Gathering OracleAS Web Cache Performance Statistics
Gathering Origin Server Performance Statistics
15
Using Diagnostics Tools
Listing Popular Requests and Cache Contents
Listing Popular Requests
Listing All Contents
Evaluating Event Logs
Format of the Event Log File
Configuring Event Logs
Event Log Examples
Displaying Diagnostic and Event Log Information in the HTML Body or Server Response-Header Field
Evaluating Access Logs
Format of the Access Log Files
cs(
header_name
) and sc(
header_name
) Access Log Fields
Configuring Access Logs
Analyzing an Access Log File
Access Log Examples
Rolling Over Event and Access Logs
Part III Reference
16
Edge Side Includes (ESI) Language Tags
Overview of ESI
Supported ESI Language Elements
Syntax Rules
Nesting Elements
Variable Expressions
Variable Usage
Variable Default Values
HTTP Request Variables
Exceptions and Errors
ESI Tag Descriptions
ESI choose | when | otherwise Tags
ESI comment Tag
ESI environment Tag
ESI include Tag
ESI inline Tag
ESI invalidate Tag
ESI remove Tag
ESI try | attempt | except Tags
ESI vars Tag
ESI <!--esi-->Tag
17
Event Log Messages
Message Format
Messages that Reference Network Security Messages (NZE)
Message Listing
A
OracleAS Web Cache Directory Structure
B
Invalidation and Statistics Document Type Definitions
Invalidation DTD
Invalidation Request and Response DTD
Invalidation Preview Request and Response DTD
Statistics DTD
Statistics Request and Response DTD
Groups of Statistics
Cache Information Groups
Runtime Statistics Groups
Site Information Groups
Origin Server Statistics Group
URL Statistics Group
Cache Reasons Group
Query Methods
Statistics Examples
Complete Statistics Template
C
OracleAS Web Cache as a Standalone Product
Differences When OracleAS Web Cache Installed Standalone
OracleAS Web Cache Processes
webcachectl Utility Overview
webcachectl Utility Commands
reset
restart
restartadm
restartcache
start
startadm
startcache
status
stop
stopabort
stopadm
stopcache
webcachectl Parameter
D
Caching with Third-Party Application Web Servers
Overview of Third-Party Application Servers
Web Site Configuration
Caching Rules and Expiration Rules
BEA WebLogic Server 6.0
WebLogic SnoopServlet
WebLogic SessionServlet
IBM WebSphere Application Server, Version 4.0
WebSphere Snoop Servlet
WebSphere SessionSample
Apache Tomcat, Version 4.1
Apache Tomcat Snoop JSP
Apache Tomcat Session Servlet
Microsoft IIS 5.0
ServerVariables_Jscript ASP
Cookie_Jscript ASP
E
Troubleshooting OracleAS Web Cache
Problems and Solutions
Startup Failures
Load Issues on OracleAS Web Cache Computer
Performance Degradation and Memory
Invalidation Timeouts
Capacity Issues on Origin Server
Browsers Not Receiving Complete Responses
Browser Displaying a Page Not Displayed Error
End-User Performance Monitoring Issues
XML Parsing Errors of webcache.xml Appears in Event Viewer
Diagnosing Top User Issues
Diagnosing Cache Content Results
Diagnosing Common Edge Side Includes (ESI) Syntax Errors
Template Syntax Error Example
Fragment Syntax Error Example
Fragment Syntax Error with Exception Handling Example
Impact of HTTP Traffic Changes
Resolving Common NZE Errors
Need More Help?
Glossary
Index