今天下午突然間公司的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服務器
再次查看進程
ok了