Top Banner
New Approaches to Faster Oracle Forms System Performance August 9, 2012 Frank Days, VP Marketing, Correlsense Mia Urman, CEO, OraPlayer
32

New Approaches to Faster Oracle Forms System Performance

Nov 01, 2014

Download

Technology

Correlsense

Are your end-users complaining that Forms is slow? Ever wonder what the source of the problem is? Want to learn what are the fastest, most effective strategies to improve overall performance and end user experience?

Join us for a webinar where we will showcase best practices for application support engineers, application owners, QA engineers, Oracle Forms developers and EBS Integrators. Topics include:

Minimizing start up times and resource requirements
Improving speed of Forms rendering
Gaining visibility into the potential source of bottlenecks in Oracle components

Speakers: Mia Urman, CEO of OraPlayer Ltd. and Frank Days, VP of Marketing, Correlsense
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: New Approaches to Faster Oracle Forms System Performance

New Approaches to Faster Oracle Forms System Performance

August 9, 2012Frank Days, VP Marketing, CorrelsenseMia Urman, CEO, OraPlayer

Page 2: New Approaches to Faster Oracle Forms System Performance

Agenda

• The Complexities of Oracle Forms• Faster Forms System Performance• Monitoring Oracle Forms• Summary/Q&A

Page 3: New Approaches to Faster Oracle Forms System Performance

Housekeeping

• Presentation will last 30 minutes• Submit questions via the chat window• Slides will be made available tomorrow

Page 4: New Approaches to Faster Oracle Forms System Performance

Guest Speaker:Mia Urman, CEO, Oraplayer

• Sr. Support Analyst and Product Manager of Forms and ADF at Oracle for 7 years

• 13+ years supporting, training and consulting for Oracle Tools

• Founder of Qesem Consulting. Clients include: Mastercard, Bank of Israel, IBM and Motorola

• CEO of OraPlayer, a leading provider of Oracle Forms to SOA integration and mobile

• Leader of OUG Oracle Developer user group

Page 5: New Approaches to Faster Oracle Forms System Performance

Correlsense Speaker:Frank Days

VP MarketingCorrelsense

Page 6: New Approaches to Faster Oracle Forms System Performance

THE COMPLEXITIES OF ORACLE FORMS

Page 7: New Approaches to Faster Oracle Forms System Performance

Forms Complex Multi-Tier Architecture

• Hard to effectively identify the degrading element

Oracle DB

Oracle DB

ApacheServeror OHS

ApacheServeror OHS

Internet

Desktop IAS or WLS

IAS or WLS

Page 8: New Approaches to Faster Oracle Forms System Performance

Application written Entirely in JavaScenario #1:

Download EntireApplication Logic

Application built using Oracle Forms Server PlatformScenario #2:

Only Download Metadata for Application

Oracle Application

Server

Forms Server

Oracle

How Does Forms Work?

Page 9: New Approaches to Faster Oracle Forms System Performance

String Buffering• If a given string is used more than once in a form:

– String is loaded once– Referencing occurs on client

• All triggering events sent in single Network Message

Fred

Fred

Fred

FredEvent Bundling

Post-ChangePost-ItemWhen-Validate-ItemPre-ItemWhen-New-Item-Instance

Page 10: New Approaches to Faster Oracle Forms System Performance

FASTER FORMS SYSTEM PERFORMANCE

Page 11: New Approaches to Faster Oracle Forms System Performance

Goals

Minimize Startup time Minimize client resource requirements Minimize Oracle Forms Server resource

requirements Use the network as little as possible Accomplish as much as possible in one

network conversation When rendering, be as efficient as possible

Page 12: New Approaches to Faster Oracle Forms System Performance

Minimizing Start Time

• Pre-start forms applet - startup a number of application runtime engines prior to their usage

• Perceived performance - ‘SPLASH’ screen

HTML Parameter

<APPLET>…<PARAM NAME=

VALUE= >…</APPLET>

splashScreensplashScreen

"travel.jpg""travel.jpg"

Page 13: New Approaches to Faster Oracle Forms System Performance

Reduce Time to Draw Initial Screen

Property sets are downloaded to describe visible

screen

• Time to initialize Form is heavily influenced by the amount of meta-data required to describe all objects on the first Form the user sees

• Break up large Modules into smaller ones• Only display required canvases• Set raise on entry = false for canvases

and items not needed for initial screen

Page 14: New Approaches to Faster Oracle Forms System Performance

1

Navigation Resources: Open/Call_Form

• Original Form – Remains open on server

– Properties are cached on client

• System Resources– Consumes more memory on server and client.

– Less Network round trips required to reload Form UI

Client

2

1

2

11

Page 15: New Approaches to Faster Oracle Forms System Performance

Navigation Resources: New_Form

• Original Form – Closed on server

– Object Properties on client are destroyed

• System Resources– Consumes less memory on server and client.

– More Network round trips required to download form UI (important if latency is bad)

11

Client

2

2

11

Page 16: New Approaches to Faster Oracle Forms System Performance

...

set_item_property(text_item1_id, FONT WEIGHT, “Bold”);

set_item_property(text_item2_id, FONT WEIGHT, “Bold”);

set_item_property(text_item3_id, FONT WEIGHT, “Bold”);

set_item_property(button_item1_id, LABEL, “Exit”);

...

...

set_item_property(text_item1_id, FONT WEIGHT, “Bold”);

set_item_property(text_item2_id, FONT WEIGHT, “Bold”);

set_item_property(text_item3_id, FONT WEIGHT, “Bold”);

set_item_property(button_item1_id, LABEL, “Exit”);

...

Promote Similarities

• Similar items handled by the Forms smart delta messaging– Only differences are sent across the network

• Promote similarity in the UI – OLB, Visual attributes– Use Inheritance - Property classes and Object groups

– Use subclasses – draw multiple objects with standard settings

• Group setting of properties into like-groups

Page 17: New Approaches to Faster Oracle Forms System Performance

Boilerplates and Images on Canvases• Boilerplates are downloaded as VGS objects

– Make labels prompts when upgrading from older Forms versions

– Prompts automatically participate in message diff'ing and string caching

• Reduce using Arcs, Circles and Polygons as boilerplates– Replace by rectangles and lines

Boilerplate Objects

text

Page 18: New Approaches to Faster Oracle Forms System Performance

Reduce Items on the Screen: Tab canvases

• All items of all tabs aredownloaded to client

• Use hidden stackedcanvas on each tabto defer download

• Code changes–WHEN-TAB-PAGE-CHANGED trigger–RAISE_ON_ENTRY=YES–VISIBLE=NO

Page 19: New Approaches to Faster Oracle Forms System Performance

Save Images In JAR Files

• Iconic buttons on the Web are in gif and jpeg formats

• Put your .GIF and PJCs files in the JAR– Faster download

– Takes advantage of the cache

• Store all images of an application in a single Jar– Jar files are permanently cached on the client

Page 20: New Approaches to Faster Oracle Forms System Performance

Mouse Triggers & Network Traffic

Move trigger code to specific items requiring Mouse triggers

• Dangers of mouse triggers – Increase network traffic

• MOUSE-DOWN triggering event always generates a second MOUSE-UP message even if trigger hasn’t been defined

• Mouse triggers often defined at higher level in hierarchy or on Canvas– causes multiple execution of trigger

Page 21: New Approaches to Faster Oracle Forms System Performance

Client Forms Server

What you can do:-Choose timer trigger delays carefully-Use PJCs to implement “Clock”, “Progress Bar”, and “Animation” functionalities

Timer Trigger

• Timer Process occurs in client side code (Java client)• Has severe ramifications on number of network

round-trips generated• e.g. 1 mSec timer := 60,000 round trips per minute

Page 22: New Approaches to Faster Oracle Forms System Performance

Minimize Round Trips

• Design applications that do not require a user to navigate through fields if default values are accepted

• Be wary of SYNCHRONIZE Built-In– The "universal weapon" for coding problems in

client/server introduces performance hits on the Web

– Round-trip from server to client

– Overuse generates unnecessary network traffic

– Problems handled by "synchronize" on client/server may not exist anymore

Page 23: New Approaches to Faster Oracle Forms System Performance

Summary: Optimize the Design

• Use subclasses - drawing multiple objects

with standard settings is more efficient

– Reduced messages from “message diff-ing”

• Use event bundling

• Use PLL libraries

– Concurrent users can share memory used by a library

• Minimize use of graphic items

• Use prompts

Page 24: New Approaches to Faster Oracle Forms System Performance

Summary: Other Performance Tips

• A slow server never runs applications fast• You can't think without brains - Configure the

server with enough memory • Make sure that your hardware can handle the

load• Latency can be introduced by non network

components• Locate app server close to database server• Monitor forms performance to see where

improvements can be made

Page 25: New Approaches to Faster Oracle Forms System Performance

MONITORING ORACLE FORMS

Page 26: New Approaches to Faster Oracle Forms System Performance

Production Optimization

• Monitor Forms apps end-to-end• Manage user experience• Understand how components interact

Page 27: New Approaches to Faster Oracle Forms System Performance

Track All Requests Through All Hops

AppletApache

OC4JForms Runtime

Specific SQLs

• Track all user requests through all components (not just Java and .Net)

• Track and meter single end user across entire stack• Apache, OC4J, Forms Runtime and Oracle Database

Page 28: New Approaches to Faster Oracle Forms System Performance

Manage User Experience with Meaningful Transaction Names

Page 29: New Approaches to Faster Oracle Forms System Performance

Understand How Components Interact

• Auto-detected• Real-time• Without manual modeling

Page 30: New Approaches to Faster Oracle Forms System Performance

SharePath for Oracle Forms/EBS

• Goes beyond Java/.Net with Forms runtime coverage– Broadest coverage: rich clients, Forms applet, C++, ESBs …

– Supports the most complex, heterogeneous architectures

• Dashboards for operations, support, and engineering• No application code changes necessary• Auto-detects transaction paths

Page 31: New Approaches to Faster Oracle Forms System Performance

Summary

• Forms environment has many performance challenges

• Optimize Oracle Forms in design and production– For users

– On Backend

– Monitor Forms end-to-end

• SharePath is the only APM offering for Forms based/EBS

Page 32: New Approaches to Faster Oracle Forms System Performance

Questions?

Request a live demo: [email protected]

Frank [email protected]

Mia [email protected]@miaurmanwww.oraplayer.com

www.OracleFormsInfo.com