You are on page 1of 34

Monitoring and Performance Tuning Oracle E-Business Self Service Transactions

John Spirko Product Manager, Oracle E-Business Solutions

Agenda
Introduction Oracle E-Business Transaction Overview 9iAS Architecture Overview
Apache Web Server 9iAS Business Logic Services 9iAS Presentation Services Web and Database Caching

Common issues How Quest helps Next Steps and Conclusion

Introduction
Audience
No need to be an expert, just understand basic Application Server and database concepts Motivation Maximizing the Performance of the Oracle E-Business Suite Ahmed Alomari Multiple customer visits

Purpose
Deliver a high level overview of the Oracle Application Server architecture Set the stage for a more in depth follow-on paper on configuration and common pains with the Oracle Application server Introduce the Quest APM Suite for Oracle E-Business

Oracle E-Business Transactions


Forms also called Fat Client
Runs in an applet on the desktop Supported by 9i Application Server

Concurrent Manager
Back-end transaction runs in batch Scheduled or on demand

Direct Access
Noetix, Oracle Discover, Excel

Self-Service or Thin Client


Runs in the clients web browser No client side software required Uses mostly Java and XML technology

9iAS REL 1 Architecture

Apache Architecture

Apache Process
Control Process
Creates and destroys worker processes based on load demand from requesting clients and Apache configuration parameters

Worker Processes
Processes that render HTML results back to the requesting clients

Apache API layer


Gives Apache worker processes the ability to perform functions outside of normal html processing

Apache Mods
Works in phases like authentication, logging, content, etc Phases can be passed to a mod through the API layer Mod handles the request and passes results back to the worker

Apache Web Server


Latest version certified with 11.5.9 is 1.3.19 First process pool in a series of pools that need attention within 9iAS Important files
httpd.conf (default) error_log Access_log

Business Logic Services


Framework for development Standardizes security and presentation OA Framework 5.7 latest with 11.5.9 Mostly XML and Servlets The future of Oracle E-Business Suite Heading towards J2EE with 9i REL 2

Business Logic Services


Oracle BC4J
Business components for Java Framework for Oracle E-Business Business intelligence Eventually should be replaced by OC4J in 9iAS REL 2

Oracle 8i JVM
Java Beans PLSQL Corba 100% pure Java

Business Logic Services


Oracle 8i PLSQL
Framework for running PLSQL against an Oracle database

Oracle Forms
Driving technology for the Full-Service transaction described earlier

Presentation Services
Technology that runs the Business Logic services Each of the Presentation Services relates to a Business Logic Service
Code base in Business Logic Enabling technology in Presentation Services

Presentation Services
Apache Jserv
Sun designed servlet processing engine runs servlet code from BC4J and 8i JVM

Oracle JSP
Engine that processes and runs Java Server pages Interprets Java embedded in XML Extends traditional JSP developed by Sun Better GC and platform portability
P S P O r a c l e

Presentation Services
Oracle PSP
Similar to Oracle JSP except the interpreter processes PLSQL instead of Java

Perl Interpreter
Processes Perl code for calling mod
P S P O r a c l e

Oracle Web and DB Cache


Web Cache
Used for application with a lot of static pages that occur in transactions Common for iStore Not used across the board

DB Cache
Used to store data on mid-tier to minimize database call Cached table data instead of web pages This feature has been discontinued as per Oracle Metalink note: 171517.1

Top Pains
Many areas to cover
Multiple processes Multiple log files Multiple configuration files

Two pains for this paper


Isolating response time issues Managing the DB connection pool

Isolating Response Time Issues

Response Times using Oracle


SQL Tracing
Custom Profile FND Diagnostics

Response times on Application Server


Oracle DMS Gives Servlet response times Gives Mod response times

SQL Tracing Custom Profile


Alter the initialization SQL Statement Custom profile option for the user you want to trace Begin fnd_ctl.fnd_sess_ctl('','','TRUE','TRUE','LOG','ALTER SESSION SET EVENTS='||''''||'10046 TRACE NAME CONTEXT FOREVER, LEVEL 12'||''''); end;

FND Diagnostics
Must set in profile

Adds additional button

Getting Results
$ORACLE_HOME/admin/[DB SID]/udump $ ls -ltr to see latest log files FND_DIAGNOSTICS will show PIDs

$ ls -ltr | grep 18667 -rw-r--r-- 1 oracle dba vis_ora_18667.trc

3981026 Mar 9 17:08

Oracle DMS
Dynamic Monitoring Service Keeps cumulative response times
[Home Page]:[Port]/dms0/Spy [Home Page]:[Port]/servlet/Spy

Database Connection Pool


Database pool managed by OA_Framework [Home_Page]:[Port]/OA_HTML/jsp/fnd/Aol jDbcPoolStatus Must write script to baseline high-water mark for active JDBC Connections Pool has been know to run away for many different reasons Sometimes know to hit max_sessions limit in Oracle database

Servlet in later 11i releases

Does this look familiar?

Triage

Streamline Communication with Quest

Detect

Triage

Diagnose

Resolve

Quest APM Products

Service Model Example

Spotlight Example

Oracle Apps Domain Workbench

Baseline Process Pools

Next Steps
Evaluation of the APR Suite are available through:
Onsite or web presentation APR most common www.quest.com/apr Traditional Proof of Concept (response to Request for Information)
w w w . q u e s t . c o m / a p r

Join our Oracle E-Business discussion


www.quest.com/communities General Oracle E-Business discussion Quest products related to Oracle E-Business Suite

QUESTIONS AND ANSWERS

THANK YOU FOR LISTENING

You might also like