When we create a managed server either on the same machine or on remote
machine it gets its initial startup parameters from
$DOMAIN_HOME/bin/setDomainEnv.sh/cmd file.
By default two parameters are set:
Xms: The initial heapsize
Xmx: The max heapsize
Try to set equal initial and max heapsize. The startup time can be a
little longer but for long running applications it will provide a better
performance.
When we set -Xms512m -Xmx1024m, the physical heap size will be 512m.
This means that there are pages of memory (in the state of the 512m)
that the JVM does not explicitly control. It will be controlled by OS
which could be reserve for the other tasks. In this case, it is an
advantage if the JVM claims the entire memory at once and try not to
spend time to extend when more memory is needed. Also you can use
-XX:MaxPermSize (Maximum size of the permanent generation) option for
Sun JVM. You should adjust the size accordingly if your application
dynamically load and unload a lot of classes in order to optimize the
performance.
machine it gets its initial startup parameters from
$DOMAIN_HOME/bin/setDomainEnv.sh/cmd file.
By default two parameters are set:
Xms: The initial heapsize
Xmx: The max heapsize
Try to set equal initial and max heapsize. The startup time can be a
little longer but for long running applications it will provide a better
performance.
When we set -Xms512m -Xmx1024m, the physical heap size will be 512m.
This means that there are pages of memory (in the state of the 512m)
that the JVM does not explicitly control. It will be controlled by OS
which could be reserve for the other tasks. In this case, it is an
advantage if the JVM claims the entire memory at once and try not to
spend time to extend when more memory is needed. Also you can use
-XX:MaxPermSize (Maximum size of the permanent generation) option for
Sun JVM. You should adjust the size accordingly if your application
dynamically load and unload a lot of classes in order to optimize the
performance.