By default the initial memory size will be of 2MB whilst the maximum size will be 64MB. You will need to set new parameters when starting Messenger. In fact, when starting any Java application you may need to fine tune some parameters related to memory usage and garbage collection.
If you are under windows and you are using messenger.bat to start the server, you will need to edit bin/messenger.bat.
Replace the line:
start “Jive Messenger” “%JAVA_HOME%\bin\java” -jar …\lib\startup.jar
with something like this:
start “Jive Messenger” “%JAVA_HOME%\bin\java” -Xms10m -Xmx256m -jar …\lib\startup.jar
With this settings you are instructing the Java virtual machine to start with an initial memory size of 10 megs and the maximum is 256. If you are under Unix you will then need to edit the messenger.sh file and change the messenger_exec_command variable.
For more information about the JVM arguments you may want to follow these links:
You can also activate another configuration in the JVM in order to get more information about the current memory consumption. Try passing this argument to the JVM -verbose:gc to get information about the current allocated memory. This information will be very helpful in order to fine tune your installation.
You will get something like this in your stdout file:
GC - Indicates that it was a minor collection (young generation). If it had said Full GC then that indicates that it was a major collection (tenured generation).
325407K - The combined size of live objects before garbage collection.
83000K - The combined size of live objects after garbage collection.
(776768K) - the total available space, not counting the space in the permanent generation, which is the total heap minus one of the survivor spaces.
0.2300771 secs - time it took for garbage collection to occur.