tomcat重启脚本
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tomcat重启脚本相关的知识,希望对你有一定的参考价值。
tomcat需要定时重启,以前遇到过这种情况,现在又有需求(说白了还是java项目内存泄露问题,我内心一万匹草泥马奔过)
我们都知道重启tomcat项目很方便,直接使用pkill java 然后start.sh命令重启即可(这里是centos系统)
脚本如下:
#!/bin/bash
#This script run at every 4days 00:00
#it is used to restart tomcat,because of mem leakage.
/bin/pkill java
Time=`date +%F`
sleep 3
a=`ps -ef|grep java|grep -v "grep"|wc -l`
if [ $a == 0 ];then
/bin/bash /data/tomcat/bin/startup.sh
echo " $Time tomcat chongqi success">/var/log/a.log //这里用于监控脚本是否正常执行。
else
echo " $Time tomcat chongqi error">/var/log/a.log
fi
但是我们将上述脚本加入到定时任务后,但是tomcat重启不生效。
一开始非常费解。后来想到是不是bash 根本无法识别JAVA的环境变量,因为以前写脚本就遇到过这类似问题。带着怀疑试着修改脚本。
#!/bin/bash
#This script run at every 4days 00:00
#it is used to restart tomcat,because of mem leakage.
JAVA_HOME=/usr/java/jdk1.8.0_101
PATH=$PATH:/usr/java/jdk1.8.0_101/bin
/bin/pkill java
Time=`date +%F`
sleep 3
a=`ps -ef|grep java|grep -v "grep"|wc -l`
if [ $a == 0 ];then
/bin/bash /data/tomcat/bin/startup.sh
echo " $Time tomcat chongqi success">/var/log/a.log
else
echo " $Time tomcat chongqi error">/var/log/a.log
fi
然后成功。
以上是关于tomcat重启脚本的主要内容,如果未能解决你的问题,请参考以下文章