Tomcat作为开源的服务器,性能与稳定性上比起一些商业服务器还是要差一些。将项目部署到Tomcat后隔段时间就会死掉,出现这种问题的主要原因可能是内存数据溢出,因为Tomcat容器在发生大量与数据库交互查询或者操作的时候很容易出现问题。定时重启是一个很好的补救措施,定时重启可以定时的清理内存也降低了Tomcat运行的风险,从而保持tomcat的最佳性能。
一、写一个shell脚本restart.sh,重新启动tomcat
#!/bin/sh
pid=`ps aux | grep tomcat | grep -v grep | grep -v retomcat | awk '{print $2}'`
echo $pid
if [ -n "$pid" ]
then
{
echo ===========shutdown================
/usr/local/tomcat/bin/shutdown.sh
sleep 2
pid=`ps aux | grep tomcat | grep -v grep | grep -v retomcat | awk '{print $2}'`
if [ -n "$pid" ]
then
{
sleep 2
echo ========kill tomcat begin==============
echo $pid
kill -9 $pid
echo ========kill tomcat end==============
}
fi
sleep 2
echo ===========startup.sh==============
/usr/local/tomcat/bin/startup.sh
}
else
echo ===========startup.sh==============
/usr/local/tomcat/bin/startup.sh
fi
二、把restart.sh文件放到root(或者其他)目录下,并修改权限为可执行文件。
三、在控制台上输入以下命令
crontab –e
按i键编辑这个文本文件,输入以下内容,每天凌晨3:30重启tomcat
30 03 * * * /root/mytt.sh
四、按esc退出编辑模式 输出:wq保存退出
五、启动定时服务
[root@]# service crond stop
[root@]# service crond start