I often receive “Out of memory” error for the Muse servers. How can I solve this problem?

We suggest that you use the following parameters for the ICE Server as the HTTP Server and Muse Proxy Server do not request many resources and may stay as installed. If you still encounter Out of Memory problems with these servers, we suggest you add or increase the values of the memory parameters.

The –Xmx and –Xms parameters should already be present in the Java command line. It is recommended that both have the same values. Setting -Xmx and -Xms to the same value will avoid heap resizing, the most common cause of OutOfMemory errors. If -Xmx and -Xms have the same value, the JVM will try to allocate all heap memory at startup, exiting with an OutOfMemory error if this memory is not available.

Make sure the system has enough memory to accommodate the Java Virtual Machine and other programs. It is not a good option to choose values larger than the physical memory, because the host operating system will swap a part of the memory, and the speed advantage will be lost due to frequent disk accesses. For example, one may set –Xmx512M –Xms512M. The respective machine should have at least 512Mbytes of physical RAM. It is recommended that you set these values as high as possible, taking into consideration the requirements for the other servers running on that machine – including all the Muse Servers.

For Muse 2500 and newer, the Xmx and Xms memory settings (as well other settings) are set in the configure scripts (configure.bat, configure, configure.csh – depending on the operating system and shell used – Linux), one for each Muse server. Apache Tomcat and Muse Proxy servers have as default values TOMCAT_XMS=128M, TOMCAT_XMX=512M respectively PROXY_XMS=64M, PROXY_XMX=512M now.

For more information please refer to the “Muse Advanced Configuration.pdf”, chapter “Java Virtual Machine enhancements.”