某系统服务前段页面访问超时,通过服务器查看,JAVA进程占用内存太高,服务卡死,需重启tomcat, 当前tomcat shutdows.sh 不可用,只能通过kill -9 。 而且每天早上都得做重复操作, 编写restart.sh重启,代码如下:
#!/bin/sh
pid=`ps -ef|grep tomcat|grep -v "grep"|awk '{print $2}'`
if [ "$pid" != "" ]
then
echo "shutdown tomcat $pid"
kill -9 $pid
fi
sleep 10s
echo "startup tomcat"
sh /home/app/apache-tomcat-8.5.34/bin/startup.sh
配置定时任务,crontab -e 在最下面加入
00 08 * * * sh /home/app/apache-tomcat-8.5.34/apache-tomcat-8.5.34/binrestart.sh
测试之后发现tomcat会关闭,但是不会启动,经过尝试需要用如下方式:
31 10 * * * cd /home/app/apache-tomcat-8.5.34/apache-tomcat-8.5.34/bin && /bin/sh restart.sh
tomcat 重启问题解决。