今天下午突然间公司的GTV管理平台上不去了,访问确实,提示找不到页面,登录终端查看服务进程。
ps -ef | grep jboss
发现没有这个进程。怎么办,启动被。
输入nohup /home/cdms/jboss-4.0.5.GA/bin/run.sh &
启动后查看再次查看进程。
ps -ef | grep jboss
然后,还是进程还是没有启动。奇了怪了,查看日志
tail -n 200 -f nohup.out 发现报如下错误
======================================
JBoss Bootstrap Environment
JBOSS_HOME: /home/cdms/jboss-4.0.5.GA
JAVA: /home/cdms/jdk1.6.0_32/bin/java
JAVA_OPTS: -Dprogram.name=run.sh -server -Xms12000m -Xmx12000m -XX:NewSize=256m -Xss128k -XX:MaxNewSize=512m -XX:PermSize=128m -XX:MaxPermSize=512m -XX:+UseConcMarkSweepGC -XX:+CMSPermGenSweepingEnabled -XX:+CMSClassUnloadingEnabled -Djboss.platform.mbeanserver
CLASSPATH: /home/cdms/jboss-4.0.5.GA/bin/run.jar:/home/cdms/jdk1.6.0_32/lib/tools.jar
=========================================================================
Please use CMSClassUnloadingEnabled in place of CMSPermGenSweepingEnabled in the future
Error occurred during initialization of VM
Could not reserve enough space for object heap
看到日志前面几行没有问题,显示"正常",看到下面的时候发现一个报错
google 了一下发现是内存不足,无法启动。
然后查看了一下内存剩余空间,
free -m
真的是不够了,这样找到了问题所在 就开始解决吧。
释放内存
echo 1 > /proc/sys/vm/drop_caches
然后再次查看内存
确实释放了很多,然后再次启动jboss服务
但是...
错误依然如此
这时候仔细查看日志信息。发现上面JAVA_OPTS配置中设置的内存大小为12000m 系统中这点内存哪特么够,后来果断改为512m
启动jboss服务器
再次查看进程