Skip Headers
Oracle® Application Server Performance Guide
10
g
Release 2 (10.1.2)
B14001-02
Home
Solution Area
Index
Next
Contents
Title and Copyright Information
Preface
Intended Audience
Documentation Accessibility
Related Documentation
Conventions
1
Performance Overview
1.1
Introduction to Oracle Application Server Performance
1.1.1
Performance Terms
1.2
What Is Performance Tuning?
1.2.1
Response Time
1.2.2
System Throughput
1.2.3
Wait Time
1.2.4
Critical Resources
1.2.5
Effects of Excessive Demand
1.2.6
Adjustments to Relieve Problems
1.3
Performance Targets
1.3.1
User Expectations
1.3.2
Performance Evaluation
1.4
Performance Methodology
1.4.1
Factors in Improving Performance
2
Monitoring Oracle Application Server
2.1
Overview of Monitoring Oracle Application Server
2.1.1
Oracle Enterprise Manager 10
g
Application Server Control Console
2.1.2
Oracle Application Server Built-in Performance Metrics
2.1.3
Centralized Management of Oracle Application Server Instances
2.1.4
Native Operating System Performance Commands
2.1.5
Network Performance Monitoring Tools
2.2
Using Oracle Application Server Built-in Performance Metrics
2.2.1
Viewing Performance Metrics Using AggreSpy
2.2.2
Viewing Performance Metrics Using dmstool
2.2.3
Viewing Performance Metrics Using AggreSpy (for Standalone OC4J)
2.2.4
Using Built-in Performance Metrics on Windows Systems
3
Monitoring Oracle HTTP Server
3.1
Monitoring Oracle HTTP Server with Application Server Control Console
3.1.1
Assessing the Oracle HTTP Server Load with Application Server Control Console
3.1.2
Investigating Oracle HTTP Server Errors with Application Server Control Console
3.1.3
Categorizing Oracle HTTP Server Problems with Application Server Control Console
3.2
Monitoring Oracle HTTP Server with Built-in Performance Metrics
3.2.1
Assessing the Oracle HTTP Server Load with Built-in Metrics
3.2.2
Investigating Oracle HTTP Server Errors with Built-in Metrics
3.2.3
Categorizing Oracle HTTP Server Performance Problems with Built-in Metrics
4
Monitoring OC4J
4.1
Monitoring OC4J With Application Server Control Console
4.1.1
Monitoring OC4J Instances With Application Server Control Console
4.1.2
Monitoring J2EE Applications with Application Server Control Console
4.2
Monitoring OC4J With Built-in Performance Metrics
5
Optimizing Oracle HTTP Server
5.1
TCP Tuning Parameters (for UNIX)
5.1.1
Tuning Linux
5.1.2
Setting TCP Parameters
5.2
Network Tuning for Windows
5.2.1
Network Tuning (for Windows 2000)
5.2.2
Network Tuning (for Windows 2003)
5.2.3
Network Tuning (for Windows XP)
5.3
Configuring Oracle HTTP Server Directives
5.3.1
Configuring the MaxClients Directive
5.3.2
How Persistent Connections Can Reduce httpd Process Availability
5.3.3
Configuring the ThreadsPerChild Parameter (for Windows)
5.3.4
Configuring the Oc4jCacheSize Directive
5.4
Oracle HTTP Server Logging Options
5.4.1
Access Logging
5.4.2
Configuring the HostNameLookups Directive
5.4.3
Error logging
5.5
Oracle HTTP Server Security Performance Considerations
5.5.1
Oracle HTTP Server Secure Sockets Layer (SSL) Performance Issues
5.5.2
Oracle HTTP Server Port Tunneling Performance Issues
5.6
Oracle HTTP Server Performance Tips
5.6.1
Analyze Static Versus Dynamic Requests
5.6.2
Analyze Time Differences Between Oracle HTTP Server and OC4J Servers
5.6.3
Beware of a Single Data Point Yielding Misleading Results
5.7
Setting mod_oc4j Load Balancing Policies
5.7.1
Quick Summary for Using Load Balancing With mod_oc4j
5.7.2
Using Round Robin and Random Policies With mod_oc4j Load Balancing
5.7.3
Using Local Affinity Option With mod_oc4j Load Balancing
5.7.4
Using Weighted Routing Option With mod_oc4j Load Balancing
5.7.5
Recommendations for Load Balancing With mod_oc4j
6
Optimizing J2EE Applications In OC4J
6.1
OC4J J2EE Application Performance Quickstart
6.2
Improving J2EE Application Performance by Configuring OC4J Instance
6.3
Setting Java Command Line Options (Using JVM and OC4J Performance Options)
6.3.1
Setting the JVM Heap Size for OC4J Processes
6.3.2
Setting the JVM Server Option for OC4J Processes
6.3.3
Setting the JVM AggressiveHeap Option for OC4J Processes
6.3.4
Setting the JVM Stack Size Option for OC4J Processes
6.3.5
Setting the JVM Permanent Generation Option for OC4J Processes
6.3.6
Setting the OC4J DMS Sensors Option
6.3.7
Setting the OC4J JDBC DMS Statement Metrics Option
6.3.8
Setting the OC4J Dedicated RMI Context Option
6.3.9
Setting the OC4J EJB Wrapper Class Compilation Mode
6.3.10
Using Application Server Control Console to Change JVM Command Line Options
6.4
Setting Up Data Sources – Performance Issues
6.4.1
Emulated and Non-Emulated Data Sources
6.4.2
Using the EJB Aware Location Specified in Emulated Data Sources
6.4.3
Setting the Maximum Open Connections in Data Sources
6.4.4
Setting the Minimum Open Connections in Data Sources
6.4.5
Setting the Cached Connection Inactivity Timeout in Data Sources
6.4.6
Setting the Wait for Free Connection Timeout in Data Sources
6.4.7
Setting the Connection Retry Interval in Data Sources
6.4.8
Setting the Maximum Number of Connection Attempts in Data Sources
6.4.9
Setting the JDBC Statement Cache Size in Data Sources
6.4.10
Setting the JDBC Prefetch Size for a CMP Entity Bean
6.4.11
Using Application Server Control to Change Data Source Configuration Options
6.5
Setting server.xml Configuration Parameters
6.5.1
Setting the OC4J Transaction Configuration Timeout in server.xml
6.5.2
Setting the OC4J Task Manager Granularity in server.xml
6.5.3
Setting the OC4J Options for Stateful Session Bean Passivation in server.xml
6.5.4
Limiting Concurrency In OC4J
6.5.5
Using Application Server Control Console to Change server.xml Configuration Options
6.6
Improving Servlet Performance in Oracle Application Server
6.6.1
Improving Performance by Altering Servlet Configuration Parameters
6.6.2
Servlet Performance Tips
6.7
Improving JSP Performance in Oracle Application Server
6.7.1
Improving Performance by Altering JSP Configuration Parameters
6.7.2
Improving Performance by Tuning JSP Code
6.8
Improving EJB Performance in Oracle Application Server
6.8.1
Configuring Parameters that Apply for All EJBs (Except MDBs)
6.8.2
Configuring Parameters for CMP Entity Beans
6.8.3
Configuring Parameters for BMP Entity Beans
6.8.4
Configuring Parameters for Session Beans
6.8.5
Configuring Parameters for Message Driven Beans (MDBs)
6.9
Improving Web Services Performance in Oracle Application Server
6.9.1
Avoiding Web Services Initial Request Delay
6.9.2
Using Web Services Typed Requests
6.9.3
Tuning the Web Services Stateful Session Timeout
6.10
Improving ADF Performance in Oracle Application Server
6.10.1
Choose the Right Deployment Configuration
6.10.2
Use Application Module Pooling for Scalability
6.10.3
Perform Global Framework Component Customization Using Custom Subclasses
6.10.4
Use SQL-Only and Forward-Only View Objects when Possible
6.10.5
Do Not Let Your Application Modules Get Too Large
6.10.6
Use the Right Failover Mode
6.10.7
Use View Row Spillover to Lower the Memory to Cache a Large Number of Rows
6.10.8
Choose the Right Style of Bind Parameters
6.10.9
Implement Query Conditions at Design Time if Possible
6.10.10
Use the Right JDBC Fetch Size
6.10.11
Turn off Event Listening in View Objects used in Batch Processes
6.11
Improving JAAS (JAZN) Performance in Oracle Application Server
6.11.1
Improving JAZN Performance With an XML Provider
6.11.2
Improving JAZN Performance With an LDAP Provider (Oracle Internet Directory)
6.11.3
Configuring JAZN Providers
6.11.4
JAZN Performance Recommendations
6.12
Improving Toplink Performance
6.13
Using Multiple OC4Js, Limiting Connections and Load Balancing
6.13.1
Configuring Multiple OC4J Processes
6.13.2
Load Balancing Applications
6.13.3
Limiting Connections
6.13.4
Controlling Replication With Multiple OC4Js
6.14
Performance Considerations for Deploying J2EE Applications
6.14.1
Deployment Performance During the Application Development Phase
6.14.2
Deployment Performance During the Test and Production Phases
7
Optimizing OracleAS Web Cache
7.1
Use Two CPUs for OracleAS Web Cache
7.2
Configure Enough Memory for OracleAS Web Cache
7.3
Make Sure You Have Sufficient Network Bandwidth
7.4
Set a Reasonable Number of Network Connections
7.4.1
Connections on UNIX Platforms
7.4.2
Connections on Windows
7.5
Tune Network-Related Parameters
7.6
Increase Cache Hit Rates
7.7
Check Application Web Server and Web Cache Settings to Optimize Response Time
8
Optimizing PL/SQL Performance
9
Instrumenting Applications With DMS
9.1
Introducing DMS Performance Metrics
9.1.1
Instrumenting Applications With DMS Metrics
9.1.2
Monitoring DMS Metrics
9.1.3
Understanding DMS Terminology (Nouns and Sensors)
9.1.4
DMS Naming Conventions
9.2
Adding DMS Instrumentation To Java Applications
9.2.1
Including DMS Imports
9.2.2
Organizing Performance Data
9.2.3
Defining and Using Metrics for Timing
9.2.4
Defining and Using Metrics for Counting
9.2.5
Defining and Using Metrics for Recording Status Information (State Sensors)
9.3
Validating and Testing Applications Using DMS Metrics
9.3.1
Validating DMS Metrics
9.3.2
Testing DMS Metrics For Efficiency
9.4
Understanding DMS Security Considerations
9.5
Conditional Instrumentation Using DMS Sensor Weight
9.6
Dumping DMS Metrics To Files
9.7
Resetting and Destroying Sensors
9.8
DMS Coding Recommendations
9.8.1
Isolating Expensive Intervals Using PhaseEvent Metrics
9.9
Using A High Resolution Clock To Increase DMS Precision
9.9.1
Configuring DMS Clocks for Reporting Time for OC4J (Java)
9.9.2
Configuring DMS Clocks for Reporting Time for Oracle HTTP Server
10
Database Tuning Considerations
10.1
Tuning init.ora Database Parameters
10.2
Tuning Redo Logs Location and Sizing
A
Performance Metrics
A.1
Oracle HTTP Server Metrics
A.1.1
Oracle HTTP Server Child Server Metrics
A.1.2
Oracle HTTP Server Responses Metrics
A.1.3
Oracle HTTP Server Virtual Host Metrics
A.1.4
Aggregate Module Metrics
A.1.5
HTTP Server Module Metrics
A.1.6
Oracle HTTP Server mod_oc4j Metrics
A.2
JVM Metrics
A.2.1
JVM Properties Metrics
A.3
JDBC Metrics
A.3.1
JDBC Driver Metrics
A.3.2
JDBC Data Source Metrics
A.3.3
JDBC Driver Specific Connection Metrics
A.3.4
JDBC Data Source Specific Connection Metrics
A.3.5
JDBC ConnectionSource Metrics
A.3.6
JDBC Driver Statement Metrics
A.3.7
JDBC Data Source Statement Metrics
A.4
OC4J Metrics
A.4.1
Web Module Metrics
A.4.2
Web Context Metrics
A.4.3
OC4J Servlet Metrics
A.4.4
OC4J JSP Metrics
A.4.5
OC4J EJB Metrics
A.4.6
OC4J OPMN Info Metrics
A.5
OC4J JMS Metrics
A.5.1
JMS Metric Tables
A.5.2
JMS Stats Metric Table
A.5.3
JMS Request Handler Stats
A.5.4
JMS Connection Stats
A.5.5
JMS Session Stats
A.5.6
JMS Message Producer Stats
A.5.7
JMS Message Browser Stats
A.5.8
JMS Message Consumer Stats
A.5.9
JMS Durable Subscription Stats
A.5.10
JMS Destination Stats
A.5.11
JMS Temporary Destination Stats
A.5.12
JMS Store Stats
A.5.13
JMS Persistence Stats
A.6
OC4J Task Manager Metrics
A.7
mod_plsql Metrics
A.8
Portal Metrics
A.9
Oracle Process Manager and Notification Server Metrics
A.9.1
OPMN_PM Metric Table
A.9.2
OPMN_HOST_STATISTICS Metric Table
A.9.3
OPMN_IAS_INSTANCE Metric Table
A.9.4
OPMN_IAS_COMPONENT Metrics
A.9.5
OPMN ONS Metrics
A.10
Discoverer Metrics
A.11
DMS Internal Metrics
B
Component Performance Links
B.1
Oracle Application Server Toplink Performance Information
B.2
Oracle Application Server Portal Performance Information
B.3
Oracle Business Intelligence Discoverer Performance Information
B.4
Oracle Application Server Wireless Performance Information
B.5
Oracle Application Server Forms Services Performance Information
B.6
Oracle Application Server Reports Services Performance Information
Index