Monday, March 30, 2009

What Is the OAFM JVM Process Used For?

When running adopmnctl.sh status you notice a java process-type named "OC4J-oafm". When running adstrtal.sh you may observe that file adoafmctl.sh is called to
What is this OAFM Java Virtual Machine? What is it used for, can it be turned off, and how is it scaled.
OAFM is short for "Oracle Applications Fusion Middleware", however this doesn't best describe what the JVM is currently used for.
More specifically the OAFM JVM is used for Map Viewer applications, Oracle Transport Agent XML transactions, and Web Services.
There are 2 applications in Release 12 that use Map Viewer, these are:
Field Service and Transportation Planning
You may be wasting resources on your server by starting the OAFM JVM's if your not using Field Service, Transportation Planning, XML Gateway or Web services. If you are not using these products you can safely disable the OAFM JVM. You can follow the steps below to stop the JVM from starting when running adstrtal.sh


1. Stop the OAFM JVM via adoafmctl.sh stop


2. Edit context via the context editor and change s_oafmstatus to disabled

3. Run Autoconfig

Now when adstrtal.sh is run the adoafmctl.sh script will not be called and thus OAFM processes will not start. If you have more than one application tier please perform the actions above on all application tiers.

If you are using Field Service and/or Transportation Planning a good rule of thumb would be to have 1 OAFM jvm per 80-100 active Map Viewer users. Map data generally is quite large in size so stick to the lower end of the scale....80 users per JVM.

To adjust the number of OAFM JVMs edit context via the context editor and change s_oafm_nprocs to the number of JVMs required per node. Now run Autoconfig to propagate the change. Repeat the steps for each application tier.

1 comment:

Unknown said...

oh, have you heard about the service of how to repair mdf files not detached from sql server? it is the fastest way to open not accessible files