new approaches to faster oracle forms system performance
DESCRIPTION
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, CorrelsenseTRANSCRIPT
![Page 1: New Approaches to Faster Oracle Forms System Performance](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/1.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/2.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/3.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/4.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/5.jpg)
Correlsense Speaker:Frank Days
VP MarketingCorrelsense
![Page 6: New Approaches to Faster Oracle Forms System Performance](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/6.jpg)
THE COMPLEXITIES OF ORACLE FORMS
![Page 7: New Approaches to Faster Oracle Forms System Performance](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/7.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/8.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/9.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/10.jpg)
FASTER FORMS SYSTEM PERFORMANCE
![Page 11: New Approaches to Faster Oracle Forms System Performance](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/11.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/12.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/13.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/14.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/15.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/16.jpg)
...
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/17.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/18.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/19.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/20.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/21.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/22.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/23.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/24.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/25.jpg)
MONITORING ORACLE FORMS
![Page 26: New Approaches to Faster Oracle Forms System Performance](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/26.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/27.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/28.jpg)
Manage User Experience with Meaningful Transaction Names
![Page 29: New Approaches to Faster Oracle Forms System Performance](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/29.jpg)
Understand How Components Interact
• Auto-detected• Real-time• Without manual modeling
![Page 30: New Approaches to Faster Oracle Forms System Performance](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/30.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/31.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022061117/54579333af7959795d8b506f/html5/thumbnails/32.jpg)
Questions?
Request a live demo: [email protected]
Frank [email protected]
Mia [email protected]@miaurmanwww.oraplayer.com
www.OracleFormsInfo.com