If you have more physical memory and the machine where the DS-NOC is running is dedicated for that application, then you can increase Java memory allocation to reduce Out of Memory errors. You can do this through the Tomcat Server's Java parameter. The Java parameter is based on the memory used by the configured parameters (shown below) and the system's physical memory.
Configuring the Java memory allocation for the Tomcat Server:
For Windows Tomcat Server, run the Tomcat configuration program:
o Open the Java Tab of the program dialog.
o In the field Java Options, do one of the following:
-For Java 1.7: XX:MaxPermSize=256m
-For Java 1.8 or higher: XX:MetaspaceSize=256m
NOTE: This option is not required if you are using Java 1.8 or greater.
- XX:MetaspaceSize is now used instead of -XX:PermSize for Java 1.8. Replace the -XX:MaxPermSize to -XX:MetaspaceSize to prevent JVM crashes while generating reports. The -XX:MaxMetaspaceSize option is an optional feature as the metaspace is dynamic.
o In the field Maximum memory pool, enter the maximum amount of memory (in MB). The recommended amount to start with is one quarter of the machine's physical memory. For example:
- On a machine with 4GB RAM, you would enter 1024 MB (1GB).
- On a machine with 8GB RAM, you would enter 2048 MB (2GB).
NOTE: You may need to adjust this amount, depending on how much data is processed by the DS-NOC.
For Linux Tomcat Server, create a file setenv.sh (under the Tomcat bin directory):
o For Java 1.7, add the following lines:
export CATALINA_OPTS="$CATALINA_OPTS -XX:MaxPermSize=256m -Xmx1024m"
oFor Java 1.8 or higher, add the following lines:
export CATALINA_OPTS="$CATALINA_OPTS -XX:MetaspaceSize=1024m -Xmx1024m"
o If you have configured Linux Tomcat Server as per earlier recommendations, you can move the JAVA_OPTS options being added in catalina.sh to setenv.sh.