每次在上传war文件到web-app文件夹之前,我都会通过调用“sh shutdown.sh”停止Tomcat。以前总共需要30秒来完成关闭。但现在它不再有效。
实际上,它做了一些工作,因为当我从网页访问应用程序时,它会抛出503错误(正在维护中)。但是当我使用“ps aux | grep tomcat”进行检查时,tomcat进程仍然存在。而且它会存在大约5-10分钟。
我知道可能需要花费额外的时间来完成所有任务,但是它太慢了(5-10分钟),在完全停止之前。我不明白为什么会这样,但肯定有原因。也许与代码有关,或者最近我们使用的新部署脚本有关。我几乎没有任何线索可以检查。
这对我们的团队很重要,因为我们正在使用“自动部署”,其中我们使用脚本自动打包war文件,在特定时间上传和部署。如果我们在旧实例成功关闭之前启动了新的Tomcat实例,它将永远挂起,并且通过“kill -9”清除任务是困难的。
是否有任何人遇到过这个问题?任何线索都将不胜感激。