项目脚本启动之后,服务就会宕机
tomcat 异常信息
本人分析弯路
刚看到这个异常信息的时候,感觉异常信息很明显(本以为调试好了,重启,大约半个多小时之后,服务还是宕机)。
以为是Dubbo的问题,版本冲突,缺少依赖 。
分析日志发现
日志第一行显示的是 org.apache.coyote.AbstractProtocol pause
看整个报错信息可以看到进程销毁的记录,从pause到destory的过程:
org.apache.coyote.AbstractProtocol pause
Pausing ProtocolHandler
......
org.apache.catalina.core.StandardService stopInternal
Stopping service Catalina
......
org.apache.coyote.AbstractProtocol stop
Stopping ProtocolHandler
......
org.apache.coyote.AbstractProtocol destroy
Destroying ProtocolHandler
最终问题
再次根据日志文件分析报错信息,就是脚本启动的问题。
start.sh 脚本简化内容为:
echo '删除原项目...'
rm -rf webapps/ROOT
echo '移动项目...'
mv ROOT.war webapps/
echo '启动项目...'
sh bin/startup.sh
echo '打印日志...'
tail -f logs/catalina.out
用脚本方式启动的话,使用ps -ef | grep start.sh
命令,就会发现,脚本启动的进程。当使用kill -9
杀死进程的话,项目就不会在随着ssh 断开连接而中止项目。
具体分析可以参考(https://blog.csdn.net/iteye_15549/article/details/82609679)