31

200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Embed Size (px)

Citation preview

Page 1: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring
Page 2: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Oracle Primavera P6 EPPM: Performance Tuning, Testing, and Monitoring

Pete Biddle Enterprise Architect Oracle Primavera Business Unit April 16, 2015

Room: South Pacific D

Page 3: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Safe Harbor Statement

The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Page 4: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Agenda

Database Tuning

P6 Application Server Monitoring

Memory Settings

Best practices for fast client Java applets

Best practices for P6 Job Services

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Page 5: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Database Tuning – Use tuned Table Statistics

Run P6 db scripts that set table statistics (orpm_stats_gather.sql)

These scripts can be found at <P6InstallFolder>/database/scripts/common/aux_script

They adjust statistics to be off for certain dynamic tables

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Page 6: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Database Tuning – Partitioning

P6 Tables that supporting partitioning:

PROJWBS PROJECT UDFVALUE

If you have large number of rows, you should consider partitioning, as these tables are heterogeneous.

Please see Oracle Knowledgebase Doc ID 912820.1 for more details on database partitioning with P6

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Page 7: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Database Tuning – What Else?

Remaining database tuning is more reactive -- default db settings as set up by P6 db installer are pretty good.

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Page 8: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Database Tuning – What Else?

Remaining database tuning is more reactive -- default db settings as set up by P6 db installer are pretty good.

AWR Reports – Generate as needed if application performance drops and you suspect database is the bottleneck.

Look at “SQL ordered by Elapsed Time” first. Determine if expensive queries belong to P6 by looking at SQL Module column for “P6WebApp”.

Your DBA may find the performance of a query could be improved in your environment with a SQL hint.

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Page 9: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Application Monitoring of SQL Statements Use the Trace utility

Monitors/Displays SQL requests to the db, with timings

Download from http://support.oracle.com in Patches And Updates tab.

Search for Patch Name or Number: 12953137

Use the following download password which is good until July:

emmOgohk (note: those are all letter O’s, not zeros)

(After July, you will need to contact Oracle Support to download the tool)

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Page 10: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

<Tracer demo>

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Application Monitoring of SQL Statements

Page 11: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Monitoring the P6 Application Server

Basic Health

P6 15.1 – Use CheckBasicHealth at end of context root to check availability, ie ../p6/CheckBasicHealth

<DEMO>

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Page 12: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Monitoring the P6 Application Server (2)

JMX Bean Metrics

Use Enterprise Manager (with p6-emplugin.jar) or JConsole to monitor P6 metrics from JMX beans.

<Demo JConsole>

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Page 13: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Monitoring the P6 Application Server (3)

Resource Monitoring

Use WebLogic console’s various monitoring pages

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Page 14: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Resource Monitoring

Use JVisualVM to monitor CPU and memory

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Monitoring the P6 Application Server (4)

Page 15: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Monitoring memory and CPU using JVisualVM

JVisualvm is part of JDK Start it up from jdk/bin folder: jvisualvm

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Page 16: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

JVisualVM

Use 64 bit version of jvisualvm if monitoring 64 bit version of JDK

Can monitor any local JVM immediately

<Demo>

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Page 17: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

JVisualVM – connect remotely

To monitor remote JVM, start remote JVM up using the following JVM options which enable JMX remote connections:

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=6789 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false ** -Djava.rmi.server.hostname=<IPAddressOfThisMachine> ** -Djava.rmi.server.useLocalHostname=true ** Only add the last 2 options if having trouble connecting

Page 18: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

What should I use for –Xmx ?

Java’s –Xmx parameter controls maximum heap available

You want at least 1.5GB of wiggle room in your OS after all apps (JVMs) are using all of their max heap

Example: Running “free –m” on a 16GB Linux box shows 11GB free when everything except your target JVM is loaded. Therefore your target JVM should set –Xmx to no more than 9.5GB.

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Page 19: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Page 20: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

“!#****###$!!!”

Page 21: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Lifecycle of Loading a Java Applet in P6 (EPS, Activities, Resources)

“@ Loading” Applet code is being loaded, verified and initialized by the browser (.jar files loading from server or from Java cache).

“Loading data…” Applet is requesting project or activity data from the server. During this time, SQL queries are being executed and processed.

“Processing data…” Applet is generating and drawing grid control and Gantt chart for the first time after data is loaded.

Page 22: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Best Practices for Java applet Performance

Never use remote folder for home profile location, unless it’s as fast as a local disk

Always use 64 bit browser with 64 bit version of JVM plugin. This unfortunately leaves Firefox/Windows out of contention, since there is no 64-bit version of Firefox as of date. 64-bit Chrome or IE are preferred.

Adjust Admin setting “Maximum Memory allocated to Java applets” to be 4096 MB if workstation has enough memory

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Page 23: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Internet Explorer issue with running 64 bit JVM Problem: IE 11 & 12 versions cannot load the 64 bit Java plugin by default.

IE 11 and 12 versions launch the main iexplore.exe process as 64 bit, but the actual tabs run as separate 32-bit processes (you can see this in Task Manager - iexplore.exe*32). So any pages in these tabs will only load the 32-bit Java plugin. There is documentation on Microsoft’s site that says that turning on the IE setting “Enable Enhanced Protected Mode” will overcome this issue, however in practice I have never seen this work – IE still launches 32-bit iexplore sub-processes for the tabs.

In order to force IE to always run its tabs as 64 bit processes (and enable launching of 64 bit Java plugin), you must change registry settings for IE: In hive locations: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN and HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main, change the value TabProcGrowth to “0”. Its original value was probably “Medium” or “1”. This will force IE to run the tabs in the same process as the main 64-bit process, and therefore the 64-bit Java plugin will be used.

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Page 24: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Troubleshooting: Performance problems with Specific Users

Never underestimate detrimental effect of “scanning” tools on user’s local machine:

Windows Search Indexer

Virus Scanners

Other “listeners” implanted in desktops as part of corporate security standards

Look at Windows Task Manager processes tab-- Even 3% CPU usage by a scanner can actually represent much more drain on disk controller

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Page 25: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Job Services deployments Use multiple job services (p6services.jar) deployments on different machines to distribute the load

Don’t combine heavily used job services on single machine

Give job services exclusive use of machine or VM where possible, don’t run them on P6 Web or Web Services machine

Run load tests to ensure sufficient memory & CPU resources are available for daily or nightly jobs

Don’t allocate too many threads per job type

Always use dedicated job server for Publication services

Please see article “P6 EPPM Job Services Performance Tuning and Settings”. Direct link: http://www.oracle.com/webfolder/technetwork/tutorials/primavera/OnlineLearning/WhitePapers/P6JobServicesPerformanceTuning.pdf

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Page 26: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Bonus: Tricks for Admins Use devmode page to check P6 connectivity to other servers http://<host:port>/server/p6/dm/devmode.jsp

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Page 27: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Bonus: Tricks for Power Users Avoid Activity View scroll position jumping Drag the activity detail and WBS detail windows to your 2nd display. Avoids screen jumping around while scrolling and selecting activities and WBS.

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Page 28: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Bonus: Tricks for Power Users Quickly switch between Activity View and EPS View You can have EPS and Activity views open in 2 different tabs. Do this by first opening EPS view, then right click on Activities tab and choose “Open in New Tab”. Having both open will use more memory, but it will allow quick jumps between the 2 views while building a schedule. Caution: These 2 tabs share the same session, so if you log out of P6 in one, you will lose any un-saved data in the other tab if you have not saved it.

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Page 29: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

QUESTIONS

Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Page 30: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Primavera P6 EPPM: Perf. Tuning, Testing, and Monitoring

Page 31: 200850 oracle primavera p6 eppm performance tuning, testing, and monitoring