分享一下平时自己整理的一个springboot重启脚本
#!/bin/sh
APP_NAME="test-1.0-SNAPSHOT.jar"
JAVA_OPTS="-server -Xmx2g -XX:PermSize=96m -XX:MaxPermSize=256m -Xmn1024m -XX:+UseConcMarkSweepGC -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true"
echo "====== $APP_NAME ======"
pid=$(ps -ef | grep $APP_NAME | grep -v grep | awk '{ print $2 }')
if [ $pid ]; then
echo "=== begin kill java process, pid is:$pid"
kill -15 $pid
else
echo "=== process $pid not exists or stop success"
fi
while true;do
count=`ps -ef|grep $pid|grep -v grep`
if [ "$?" != "0" ];then
echo ">>> $pid is stoped!"
break
else
echo ">>> $pid is running..."
fi
sleep 1
done
nohup java $JAVA_OPTS -jar /home/test/test-1.0-SNAPSHOT.jar --spring.profiles.active=test >> /home/test/logs/catalina.out 2>&1 &
sleep 2
spid=$(ps -ef | grep $APP_NAME | grep -v grep | awk '{ print $2 }')
if [ $spid ];then
echo "start success ..."
echo "pid is: $spid"
else
echo "start fail ..."
fi
exit 0
项目的停止使用的是kill -15,这样会通知到项目进行一些项目停止前的相关工作,项目启动命令执行后休眠2s等待程序启动,可以根据项目的启动时间自行修改。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/181876.html