This chapter details the process of tuning application servers and standalone Oracle WebCenter products to the needs of your Oracle WebCenter deployment.
The standalone Oracle WebCenter products are:
For Java application servers and standalone Oracle WebCenter products, tuning is a matter of adjusting various Java Virtual Machine (JVM) settings to optimize garbage collection. Sun provides a comprehensive document on this subject, Tuning Garbage Collection with the 1.4.2 Java[tm] Virtual Machine, which you can find at http://java.sun.com/docs/hotspot/gc1.4.2/.
The following provides a brief background on the garbage collection process and a detailed, Oracle WebCenter focused process for tuning JVM garbage collection.
Garbage collection is the process the JVM undergoes to remove unused objects from memory. The following description of the garbage collection process is simplified for the purpose of this guide.
The JVM stores objects in two sections of the heap: the young generation and the tenured generation. The young generation is where objects are first created and provides the quickest, least CPU intensive access to objects. When the young generation fills, older active objects are transfered to the larger tenured generation. Objects in the tenured generation are more CPU intensive to access than those in the young generation.
The JVM undertakes two types of garbage collection. The minor collection runs when the young generation fills. It clears garbage objects and copies surviving objects to the tenured generation. The major collection runs when the tenured generation fills. The minor collection is significantly less CPU-intensive than the major collection.
In order to analyze garbage collection impact on application server performance, a garbage collection log needs to be collected. The process is:
Note: | Every time the application server is restarted, the garbage collection log is overwritten. It is important to turn off automatic restarting of services, especially if you are investigating an issue that yields a server crash. |
Tagtraum industries ( http://tagtraum.com) provides a free utility, gcviewer, for analyzing garbage collection logs generated by the JVM. Load the garbage collection log into gcviewer and determine which issue is occurring based on the descriptions in Table 3-1.
Resolving the issues described in Analyzing the Garbage Collection Log is a matter of adjusting the JVM memory settings and reanalyzing the garbage collection log. Table 3-2 shows what memory settings to adjust for each issue. For details on how to adjust these settings for each supported application server and standalone Oracle WebCenter product, see Java Virtual Machine Configuration.