脚本启动tomcat项目宕机问题 org.apache.coyote.AbstractProtocol pause

项目脚本启动之后,服务就会宕机

  • tomcat 异常信息
    • 本人分析弯路
    • 分析日志发现
  • 最终问题

tomcat 异常信息

脚本启动tomcat项目宕机问题 org.apache.coyote.AbstractProtocol pause_第1张图片

本人分析弯路

刚看到这个异常信息的时候,感觉异常信息很明显(本以为调试好了,重启,大约半个多小时之后,服务还是宕机)。
以为是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)

你可能感兴趣的:(服务器)