Professional Documents
Culture Documents
BPEL PM 11g Performance Tuning - 1
BPEL PM 11g Performance Tuning - 1
Contents
LOAD & PERFORMANCE TESTING ..................................................................................................... 16
1 STRESS, LOAD, SOAK, SPIKE TESTS LOAD PROFILES ................................................................................. 17
2 LNP TESTING LIFE CYCLE................................................................................................................... 18
3 EXAMPLES OF LNP TESTING OBJECTIVES ............................................................................................... 19
3.1 RESPONSE TIME...................................................................................................................................... 19
3.2 RELIABILITY............................................................................................................................................ 19
3.3 CONFIGURATION SIZING ........................................................................................................................... 19
3.4 CAPACITY PLANNING ............................................................................................................................... 19
3.5 REGRESSION .......................................................................................................................................... 20
3.6 BOTTLENECK IDENTIFICATION ................................................................................................................... 20
3.7 SCALABILITY ........................................................................................................................................... 20
BPEL PM: INTRODUCTION ............................................................... ERROR! BOOKMARK NOT DEFINED.
1 BPEL PM PROCESS TYPES ....................................................................... ERROR! BOOKMARK NOT DEFINED.
1.1 BY INTERFACE ........................................................................................... ERROR! BOOKMARK NOT DEFINED.
1.2 BY DURABILITY .......................................................................................... ERROR! BOOKMARK NOT DEFINED.
2 TERMINOLOGY ...................................................................................... ERROR! BOOKMARK NOT DEFINED.
3 DIFFERENCE BETWEEN ASYNC & SYNC BPEL .............................................. ERROR! BOOKMARK NOT DEFINED.
4 SOA 11G CONFIGURATION FILES AND LOG FILES LOCATION ............................. ERROR! BOOKMARK NOT DEFINED.
5 DEFAULT DATA SOURCES ......................................................................... ERROR! BOOKMARK NOT DEFINED.
6 PERFORMANCE OBJECTIVE ....................................................................... ERROR! BOOKMARK NOT DEFINED.
7 WHAT TO TUNE .................................................................................... ERROR! BOOKMARK NOT DEFINED.
8 SYSTEM SETUP ...................................................................................... ERROR! BOOKMARK NOT DEFINED.
9 IMPORTANT POINTS ............................................................................... ERROR! BOOKMARK NOT DEFINED.
10 REFERENCE......................................................................................... ERROR! BOOKMARK NOT DEFINED.
JVM TUNING ................................................................................... ERROR! BOOKMARK NOT DEFINED.
1 PAUSE TIMES AND THROUGHPUT .............................................................. ERROR! BOOKMARK NOT DEFINED.
1.1 GARBAGE COLLECTION VS. THROUGHPUT ...................................................... ERROR! BOOKMARK NOT DEFINED.
1.2 DEFRAGMENTATION PAUSES AND THROUGHPUT ............................................ ERROR! BOOKMARK NOT DEFINED.
2 PERFORMANCE AND MEMORY FOOTPRINT .................................................. ERROR! BOOKMARK NOT DEFINED.
3 JVM CHOICE ........................................................................................ ERROR! BOOKMARK NOT DEFINED.
4 JROCKITS TUNING ................................................................................. ERROR! BOOKMARK NOT DEFINED.
4.1 BOARDING INTO SHIP STEP 1 .................................................................... ERROR! BOOKMARK NOT DEFINED.
4.1.1 Heap Size ............................................................................................ Error! Bookmark not defined.
4.1.2 Garbage Collection............................................................................. Error! Bookmark not defined.
4.1.3 Nursery Size ...................................................................................... Error! Bookmark not defined.
APPENDIX F: ORA-01438: VALUE LARGER THAN SPECIFIED PRECISION ALLOWED .... ERROR! BOOKMARK
NOT DEFINED.
5
6
7
8
APPENDIX G: LOBS IN THE SOAINFRA SCHEMA ................................ ERROR! BOOKMARK NOT DEFINED.
APPENDIX H: AWR, ADDM, & ASH REPORTS .................................... ERROR! BOOKMARK NOT DEFINED.
1 AWR REPORT ...................................................................................... ERROR! BOOKMARK NOT DEFINED.
2 ADDM REPORT .................................................................................... ERROR! BOOKMARK NOT DEFINED.
3 ASH REPORT ........................................................................................ ERROR! BOOKMARK NOT DEFINED.
4 AWR REPORT ANALYSIS ......................................................................... ERROR! BOOKMARK NOT DEFINED.
4.1 SQL STATEMENTS ORDERED BY ELAPSED TIME ............................................... ERROR! BOOKMARK NOT DEFINED.
4.2 SQL STATEMENTS ORDERED BY CPU TIME..................................................... ERROR! BOOKMARK NOT DEFINED.
4.3 SQL STATEMENTS ORDERED BY GETS ............................................................ ERROR! BOOKMARK NOT DEFINED.
4.4 SQL STATEMENTS ORDERED BY READS .......................................................... ERROR! BOOKMARK NOT DEFINED.
4.5 SQL STATEMENTS ORDERED BY EXECUTIONS .................................................. ERROR! BOOKMARK NOT DEFINED.
4.6 SQL STATEMENTS ORDERED BY PARSE CALLS ................................................. ERROR! BOOKMARK NOT DEFINED.
5 REFERENCE .......................................................................................... ERROR! BOOKMARK NOT DEFINED.
APPENDIX I: MONITORING SCRIPTS ................................................. ERROR! BOOKMARK NOT DEFINED.
1 DATABASE MONITORING ......................................................................... ERROR! BOOKMARK NOT DEFINED.
2 JMS MONITORING ................................................................................ ERROR! BOOKMARK NOT DEFINED.
3 AQ MONITORING .................................................................................. ERROR! BOOKMARK NOT DEFINED.
APPENDIX J: HOW TO MONITOR SOA SERVER MEMORY USAGE ....... ERROR! BOOKMARK NOT DEFINED.
1
2
3
4
APPENDIX K: HEAP DUMP FILES ANALYSIS: JROCKIT AND HOTSPOT JVMS ....... ERROR! BOOKMARK NOT
DEFINED.
1 EXAMPLE ANALYSIS OF A HEAP DUMP FILE USING ECLIPSE MEMORY ANALYZER ... ERROR! BOOKMARK NOT DEFINED.
2 REFERENCE .......................................................................................... ERROR! BOOKMARK NOT DEFINED.
APPENDIX L: CAPACITY PLANNING................................................... ERROR! BOOKMARK NOT DEFINED.
Exhibits
Exhibit 1: Stress, Load, Soak, Spike Tests Load Profiles ................................................................ 18
Exhibit 2: LnP Testing Life Cycle and SDLC .................................................................................... 19
Exhibit 3: BPEL Processes ................................................................. Error! Bookmark not defined.
Exhibit 4: JVM Tuning Tradeoffs ...................................................... Error! Bookmark not defined.
Exhibit 5: JVM's Garbage Collection and Throughput ..................... Error! Bookmark not defined.
Exhibit 6: jRockit Attributes ............................................................. Error! Bookmark not defined.
Exhibit 7: HostSpot Attributes ......................................................... Error! Bookmark not defined.
Exhibit 8: WLS internal applications at startup - 1 ......................... Error! Bookmark not defined.
Exhibit 9: WLS internal applications at startup - 2 ......................... Error! Bookmark not defined.
Exhibit 10: WLS internal applications at startup - 3 ....................... Error! Bookmark not defined.
Exhibit 11: WLS internal applications at startup - 4 ........................ Error! Bookmark not defined.
Exhibit 12: WLS internal applications at startup - 5 ........................ Error! Bookmark not defined.
Exhibit 13: WLS internal applications at startup - 6 ........................ Error! Bookmark not defined.
Exhibit 14: SOAWorkManager - 1 .................................................... Error! Bookmark not defined.
Exhibit 15: SOAWorkManager - 2 .................................................... Error! Bookmark not defined.
Exhibit 16: SOAWorkManager - 3 .................................................... Error! Bookmark not defined.
Exhibit 17: WLS Muxers ................................................................... Error! Bookmark not defined.
Exhibit 18: FMC Login....................................................................... Error! Bookmark not defined.
Exhibit 19: FMC Farm Summary....................................................... Error! Bookmark not defined.
Exhibit 20: FMC Performance Summary - 1 ..................................... Error! Bookmark not defined.
Exhibit 21: FMC Performance Summary - 2 ..................................... Error! Bookmark not defined.
Exhibit 22: FMC Performance Summary - 3 ..................................... Error! Bookmark not defined.
Exhibit 23: Dynamic Memory Service .............................................. Error! Bookmark not defined.
Exhibit 24: BPEL Engine Threading Model ....................................... Error! Bookmark not defined.
Exhibit 25: Dispatcher Maximum Request Depth - 1....................... Error! Bookmark not defined.
Exhibit 26: Dispatcher Maximum Request Depth - 2....................... Error! Bookmark not defined.
Exhibit 27: InvokeMessages In Cache .............................................. Error! Bookmark not defined.
Exhibit 28: syncMaxWaitTime - 1 .................................................... Error! Bookmark not defined.
Exhibit 29: syncMaxWaitTime - 2 .................................................... Error! Bookmark not defined.
Exhibit 30: syncMaxWaitTime - 3 .................................................... Error! Bookmark not defined.
Exhibit 31: syncMaxWaitTime 4 .................................................... Error! Bookmark not defined.
Exhibit 32: BPEL EJBs - 1 ................................................................... Error! Bookmark not defined.
10
12
Snippets
Snippet 1: Sample Work Manager - 1 .............................................. Error! Bookmark not defined.
Snippet 2: Sample Work Manager - 2 .............................................. Error! Bookmark not defined.
Snippet 3: Sample config.xml........................................................... Error! Bookmark not defined.
Snippet 4: Sample startWeblogic.sh ................................................ Error! Bookmark not defined.
Snippet 5: Using setNull In a Prepared Statement .......................... Error! Bookmark not defined.
Snippet 6: Sample thread waiting for DB Call to finish.................... Error! Bookmark not defined.
Snippet 7: composite.xml ................................................................ Error! Bookmark not defined.
Snippet 8: Drop Histrogram ............................................................. Error! Bookmark not defined.
Snippet 9: Set Table Preferences ..................................................... Error! Bookmark not defined.
Snippet 10: Single Threaded Model - jca file ................................... Error! Bookmark not defined.
Snippet 11: Partitioned Threaded Model - jca file........................... Error! Bookmark not defined.
Snippet 12: Tuning number of files to be processed at a time ....... Error! Bookmark not defined.
Snippet 13: JMS Adapter - Receive Thread - composite.xml ........... Error! Bookmark not defined.
Snippet 14: AQ Adapter - Dequeue Threads - composite.xml......... Error! Bookmark not defined.
Snippet 15: common properties schema - 1.................................... Error! Bookmark not defined.
Snippet 16: common properties schema - 2.................................... Error! Bookmark not defined.
Snippet 17: bpel.xml ........................................................................ Error! Bookmark not defined.
Snippet 18: composite.xml .............................................................. Error! Bookmark not defined.
Snippet 19: SecureFiles .................................................................... Error! Bookmark not defined.
Snippet 20: BasicFiles to SecureFiles ............................................... Error! Bookmark not defined.
13
Tables
Table 1: AuditLevel........................................................................... Error! Bookmark not defined.
Table 2: BPEL Engine - AuditLevel .................................................... Error! Bookmark not defined.
Table 3: AuditStorePolicy ................................................................. Error! Bookmark not defined.
Table 4: SOA Schemas ...................................................................... Error! Bookmark not defined.
Table 5: SOAINFRA Tables ................................................................ Error! Bookmark not defined.
Table 6: MDS Schema tables............................................................ Error! Bookmark not defined.
Table 7: CUBE_INSTANCE................................................................. Error! Bookmark not defined.
Table 8: CUBE_SCOPE ...................................................................... Error! Bookmark not defined.
Table 9: COMPOSITE_INSTANCE ...................................................... Error! Bookmark not defined.
Table 10: COMPOSITE_INSTANCE_FAULT ....................................... Error! Bookmark not defined.
Table 11: AUDIT_TRAIL .................................................................... Error! Bookmark not defined.
Table 12: AUDIT_DETAILS ................................................................ Error! Bookmark not defined.
Table 13: DLV_MESSAGE ................................................................. Error! Bookmark not defined.
Table 14: DLV_SUBSCRIPTION ......................................................... Error! Bookmark not defined.
Table 15: DOCUMENT_CI_REF ......................................................... Error! Bookmark not defined.
Table 16: DOCUMENT_DLV_MSG_REF ............................................ Error! Bookmark not defined.
Table 17: WORK_ITEM ..................................................................... Error! Bookmark not defined.
Table 18: XML_DOCUMENT ............................................................. Error! Bookmark not defined.
Table 19: XML_DOCUMENT_REF ..................................................... Error! Bookmark not defined.
Table 20: HEADERS_PROPERTIES ..................................................... Error! Bookmark not defined.
Table 21: CLUSTER_MASTER ............................................................ Error! Bookmark not defined.
Table 22: CLUSTER_NODE ................................................................ Error! Bookmark not defined.
Table 23: Partial Partitioning ........................................................... Error! Bookmark not defined.
Table 24: Complete Partitioning ...................................................... Error! Bookmark not defined.
Table 25: MDS_NAMESAPCES.......................................................... Error! Bookmark not defined.
Table 26: MDS_PARTITIONS ............................................................ Error! Bookmark not defined.
Table 27: MDS_PATHS ..................................................................... Error! Bookmark not defined.
Table 28: File & FTP Adapter - Inbound Throttling .......................... Error! Bookmark not defined.
Table 29: : File & FTP Adapter - Outbound Throttling ..................... Error! Bookmark not defined.
Table 30: : File & FTP Adapter - Outbound Best Practices............... Error! Bookmark not defined.
Table 31: completionPersistPolicy property .................................... Error! Bookmark not defined.
Table 32: validateSchema value ...................................................... Error! Bookmark not defined.
Table 33: Idempotency value........................................................... Error! Bookmark not defined.
Table 34: nonBlockingInvoke value ................................................ Error! Bookmark not defined.
Table 35: Database initialization parameters .................................. Error! Bookmark not defined.
Table 36: Contention tables ............................................................. Error! Bookmark not defined.
Table 37: Tables under potential of index contention .................... Error! Bookmark not defined.
14
15
While reporting LnP results one should publish BPEL PM results and End to End connected
system.
Why is application so slow?
Highlights performance bottlenecks in hardware, network and software
Reduce hardware , network and software costs by predicting application scalability and
capacity
Does system comply with business requirement?
Helps to establish realistic service level agreements (SLA)
Helps in setting up expectations from system
Verifies that system meet specified performance requirements and avoid issue in production
What will happen as business grow?
Allows simulating various type of load to analyze system reaction (What-if conditions)
Helps in anticipating changes and evolution of business needs
The thing is, it has to be realistic
Load profile is pattern of load exerted on application under LnP testing. Choosing load profile
decides nature of test. For Stress test, load profile should be of moderate load for extended
period while for peak load test requires incremental load till application breaks.
If LnP testing is not performed well incorrect load, duration, and analysis, one can end up with
a performance false negative or a performance false positive. A false negative is breaking of
the application under certain conditions which are not realistic (like loading an application
beyond business and performance requirements).
16
On the other hand, if load is not sufficient and one reports application is working file under load
but in reality application is never loaded sufficiently. This is false positive.
The cost of both false negative and false positive is huge. While designing load scenarios and
analysis, one need to be very careful to discount false negatives and false positives.
Stress Test is conducted to find limits of the application performance and break point. In
this test load on the application is increased in linear fashion over time.
Peak Load Test is conducted when business requirements are very well understood. In this
case load is ramped up and plateaued for agreed upon level (generally at peak of busiest
business activities). At this level load is maintained for agreed upon duration and then ramped
down.
The agreed upon height of plateau and duration of plateau is an equilibrium which signifies
that application must perform satisfactorily under these conditions which are above normal
but below designed.
Soak Test is conducted to find out memory leak or similar issues which may arise when
application is loaded with more than normal load and for extended duration.
Spike test is conducted to find out applications behavior in case of sudden spike in load. In
this case load is for very short duration but beyond maximum design capacity. In spike test
ripple effects of spike are analyzed.
17
18
How long does it take to complete a BPEL process/composite under given load patterns?
How long does it take to complete a business process under given load patterns?
3.2 Reliability
How stable is the BPEL process/composite and/or BPEL engine under given load
patterns?
How long BPEL process/composite and/or BPEL engine can sustain under a given load
pattern?
Which configuration provides the best performance level under given load pattern?
What are optimized configurations under various given load patterns?
At what point does performance degradation occur under given load pattern?
What is the performance degradation patterns under given load patterns?
19
3.5 Regression
3.7 Scalability
How far the BPEL process/composite and/or BPEL engine can grow to handle future load
volumes?
What type of scalability is possible vertical or horizontal or both?
How many BPEL process/composite can be deployed on a given BPEL engine under
given/expected load conditions?
20