JVM
JVM or the Java Virtual Machine in Oracle Applications is the core where all java requests are handled. These request can be generated either from the self service web application page, from the Oracle Applications manager console or through a java based concurrent request.
The default version of JDK that comes with the latest release of Applications 11.5.10.2 is JDK 1.4.2, although JDK 1.5 has also been certified with 11.5.10 now.
The mod_jserv component of the Oracle Applications Server is responsible for processing all java requests.
The mod_jserv automatically creates a JVM during the startup of Oracle HTTP server (OHS),this JVM will handle all the servlets coming from within a browser.This is done using $IAS_ORACLE_HOME/Apache/Apache/bin/java.sh file.
mod_jserv uses the Apache JServ Protocol (AJP) to communicate between the HTTPD process and the JVM for processing the Java requests.
The jserv.conf file and the jserv.properties file control the behavior of the mod_jserv process and the JVM.
Some of the significant parameters which influence jservr performance are
The ApJServManual parameter in the jserv.conf file is used here to specify if the JVM will be allocated automatically at the startup of the OHS.
The wrapper.bin.parameters=-verbose:gc –Xmx2048M -Xms128M -XX:MaxPermSize=128M -XX:NewRatio=2 -XX:+PrintGCTimeStamps -XX:+UseTLAB in the jserv.properties
Verbose:gc means JVM is configured to print output when garbage collector runs
–Xmx2048M specifies the maximum memory heap size
-Xms128M specifies the minimum amount of memory required
According to Oracle, we can increase the maximum heap memory to over 4GB based on the available RAM.
The ApJServVMTimeout in jserv.conf is used to specify the amount of time allocated for the JVM to startup or shutdown ,this value should be sufficient to ensure thata garbage collector finishs its job.
An improper of an insufficient JVM allocation often results in java errors like the java.lang.OutOfMemoryError and java.lang.NoClassDefFoundError
In autoconfig enabled Oracle Applications systems the configuration and behavior of JVM can be maintained thought the context file. These can be changed though the Oracle Applications Manager or by using the context editor.
You can also get a summary of the Jserv usage from OAM by using the Jserv Usage Summary screen from OAM.
You can also use JConsole a utility provided by Sun Microsystems to have a graphical real time monitoring of your JVM usage.
The following article provides details on using jconsole.
http://java.sun.com/developer/technicalArticles/J2SE/jconsole.html
Additionally in oracle applications the jVM usage is catorgorised in the following groups
OACoreGroup This is the core group for handeling Java requests
DiscoGroup Ths is the JVM groups reserverd for your Discoverer requests
FormsGroup This is the JVM that is used in case you have configured your forms server to run in servlet mode
XmlSvcsGroup This is the JVM that is used for your XML services like XML gateway.
You can increase the number of JVMs for each of these groups through OAM. Each of these JVM will listen on a TCP port from the port range specified in the java.sh file.
You can check the status of your jvm though
http://[host][domain]:[port]/servlets/IsItWorking or by using Oracle Diagnostics
Thursday, September 14, 2006
Subscribe to:
Post Comments (Atom)
4 comments:
Sam,
The ApJServVMTimeout value is in the jserv.conf file, not the jserv.properties file. The value is really the amount of time given for the JVM to start or stop.
Thanks Jeff for pointing that out, will rectify it rite away.
What i meant to say was that the value in ApJServVMTimeout should be sufficient enough to allow the gc to finsh its job, though it is the amount of time given for the JVM to startup or shutdown.
I will reframe this also.
Thanks
Sam
Good one sam, check more on JVM at
http://www.teachmeoracle.com/jvm.html
Atul
Hi,
Can u plz list the diffence b/w
perl adpreclone.pl appsTier merge
perl adpreclone.pl appltop merge
Thanks.
Post a Comment