作者siebergx (...)
看板java
标题[JSP ] cronjob 重新启动的问题
时间Sun Sep 5 22:48:18 2010
小弟是 MIS。我们公司 jsp网站常挂掉, 网页开不了。
照前人交接下来的做法是,每天早上九点重新启动 tomcat
然後我觉得每天重新启动很蠢,为什麽不写到crontab里面呢?
然後我就写了一个script:
执行 tomcat 内建的关闭指令;睡两秒;再执行 tomcat 内建的关闭指令;
(因为手动执行的时候他们就是这样,理由是…这样可以关的乾净一点…)
把java的pid叫出来,kill它。
(把java程序关的更彻底)
执行 tomcat 内建的启动指令
很奇怪的是,
在文字模式下执行这个script,都可以很顺利的把tomcat重新启动。
但是写到 crontab 里面,几乎每次执行後半小时之内,
cpu或memory的使用率会上升到99%。
怎麽这麽奇怪…明明用的是同一支程式。
程式码:
==============================================
[root1 tomcat5]# cat /root/sh/tomcat-restart.sh
PATH="/usr/kerberos/sbin:/usr/kerberos/bin:/sbin:/bin:/usr/local/sbin:
/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:
/usr/java/j2sdk1.4.2_19/bin:/root/bin"
export PATH
JAVA_HOME="/usr/java/j2sdk1.4.2_19"
export JAVA_HOME
#shutdown java
/usr/local/tomcat5/bin/shutdown.sh;sleep 2;/usr/local/tomcat5/bin/shutdown.sh
#completly shutdown java by killing it's pid
javapid=$(ps aux|grep java| grep -v grep| awk '{print $2}')
echo "javapid=$javapid"
kill -9 $javapid
# startup java
/usr/local/tomcat5/bin/startup.sh
=====================================================
排程(crontab)
0 9 * * * /root/sh/tomcat-restart.sh
也试过
0 9 * * * source /root/sh/tomcat-restart.sh
但几乎在九点二十到九点半之间,网站就会因为java耗用过多资源而当掉。
why ?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.42.184.207
1F:推 puzi:这个时候有人在使用网页服务吗? 09/07 21:45
2F:→ siebergx:网站对外开放,应该随时都会有人连上来吧 09/08 15:49