原文地址:
1.OpenFire的JVM参数优化(内存)
http://1976xyg.blog.163.com/blog/static/145653525201511156202925/
2.Openfire在Linux下的性能优化
http://1976xyg.blog.163.com/blog/static/14565352520160505430683/
==================================================================================================
OpenFire的JVM默认情况下使用64M内存,在将OpenFire作为服务运行的情况下肯定不够用,需要修改参数使其能够占用服务器的更多内存资源,以便达到更好的提交性能。具体的修改参数办法如下:
-Xms512m -Xmx512m -Xss128k -Xoss128k -XX:ThreadStackSize=128
$INSTALL4J_JAVA_PREFIX nohup "$app_java_home/bin/java" -server -Dinstall4j.jvmDir="$app_java_home" -Dexe4j.moduleName="$prg_dir/$progname" "-DopenfireHome=$prg_dir/../" "-Dopenfire.lib.dir=$app_home/lib" "-Dinstall4j.launcherId=22" "-Dinstall4j.swt=false" "$vmov_1" "$vmov_2" "$vmov_3" "$vmov_4" "$vmov_5" $INSTALL4J_ADD_VM_PARAMS -classpath "$local_classpath" com.install4j.runtime.launcher.Launcher start org.jivesoftware.openfire.starter.ServerStarter false false "$prg_dir/../logs/stderror.log" "$prg_dir/../logs/stdoutt.log" true true false "" true true 0 0 "" 20 20 "Arial" "0,0,0" 8 500 "version 3.10.2" 20 40 "Arial" "0,0,0" 8 500 -1 > /dev/null 2>&1 &
$INSTALL4J_JAVA_PREFIX nohup "$app_java_home/bin/java" -server -Dinstall4j.jvmDir="$app_java_home" -Dexe4j.moduleName="$prg_dir/$progname" "-DopenfireHome=$prg_dir/../" "-Dopenfire.lib.dir=$app_home/lib" "-Dinstall4j.launcherId=22" "-Dinstall4j.swt=false" "$vmov_1" "$vmov_2" "$vmov_3" "$vmov_4" "$vmov_5" $INSTALL4J_ADD_VM_PARAMS -classpath "$local_classpath" com.install4j.runtime.launcher.Launcher start org.jivesoftware.openfire.starter.ServerStarter false false "$prg_dir/../logs/stderror.log" "$prg_dir/../logs/stdoutt.log" true true false "" true true 0 0 "" 20 20 "Arial" "0,0,0" 8 500 "version 3.10.2" 20 40 "Arial" "0,0,0" 8 500 -1 -Xms1G -Xmx1G -Xss128k -Xoss128k -XX:ThreadStackSize=128 -Djava.nio.channels.spi.SelectorProvider=sun.nio.ch.EPollSelectorProvider > /dev/null 2>&1 &
# Uncomment the following line to add additional VM parameters
INSTALL4J_ADD_VM_PARAMS="-Xms256m -Xmx768m -Xss128k -Xoss128k -XX:ThreadStackSize=128"
java -XX:+PrintFlagsInitial
3)修改端口范围。如果使用默认值,大约28000连接就不行了。修改/etc/sysctl.conf,加入:root hard nofile 65535
执行sysctl –p让参数生效,再通过sysctl –a | grep range查看是否已经有变化。这样就可以大约支持6W个连接。net.ipv4.ip_local_port_range = 1024 65000