最近新系统上线存在内存溢出问题
原来系统配置, apache httpd +apache tomcat+java 1.6
需要安装jRockit进行生产环境调试内存
1.下载jrockit
http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-jrockit-2192437.html?ssSourceSiteId=otncn
因为服务器是CentOs,所以需要下载linux版本跟window两个版本,因为检测内存的图形界面需要再window上远程连接linux系统
2.将jrockit linux版本拷贝到服务器安装
给bin安装包设置chmod +x 安装包名称
安装,一直next
安装完成后目录在root/jrockit
我是统一移动到/usr/local目录下面
3.设置
设置/etc/profile中的java路径为jrockit路径
export JAVA_HOME=/usr/local/jrockit4.1
export JAVA_BIN=/usr/local/jrockit4.1/bin
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME JAVA_BIN PATH CLASSPATH
执行完成后 source profile执行下
设置tomcat下面的catalina.sh
在开头增加
JAVA_OPTS="$JAVA_OPTS -server -Xms512m -Xmx2048m
-Xgcprio:pausetime
-Xgc:gencon -Xns200m
-XXkeepAreaRatio=5
-XXgcTrigger:10
-XXnoSystemGC
-Xverbose:memory
-Dcom.sun.management.jmxremote.port=7091
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false
-Djava.rmi.server.hostname=121.40.112.253"
4.查看netstat -nltp 看看7091端口是否打开
如果没有打开则重启下服务器 我是重启了 init 6
然后就ok了
这样配置还有个问题,在shutdown.sh的时候会保存,因为7091端口已经打开了,这样再shutdown.sh里面也会执行catalina.sh文件,所有就会报错重复打开的问题
所以需要修改增加
if [ "$1" = "start"] ; then
原来的内容
fi