Excessive memory usage in OpenFire VM when Crowd is started
Symptoms
Each time Crowd is started, although ps aux
shows that Crowd only takes Xmx + XX:MaxPermSize of physical memory, the VM's memory usage will spike to a level near the limit of the VM's physical memory.
Cause
By default, Atlassian applications such as Crowd will not use more physical memory (RES) than the specified Xmx + XX:MaxPermSize in JAVA_OPTS. This is however, not true with applications hosted in OpenFire. OpenFire does not seem to respect the limits specified in JAVA_OPTS, it only does so with INSTALL4J_ADD_VM_PARAMS.
Resolution
Shutdown Crowd
- Navigate to
CrowdInstallation/apache-tomcat/bin
and edit setenv.sh Add the following line:
INSTALL4J_ADD_VM_PARAMS="-Xms256m -Xmx512m -XX:MaxPermSize=256m $JAVA_OPTS -Djava.awt.headless=true " export INSTALL4J_ADD_VM_PARAMS
Set the Xmx, Xms and MaxPermsize based on your requirements
- Startup Crowd