码迷,mamicode.com
首页 > 系统相关 > 详细

解决Tomcat无法shutdown进程

时间:2016-11-20 13:57:27      阅读:223      评论:0      收藏:0      [点我收藏+]

标签:日志   win   perl   weight   进程   问题分析   window   kill -9   shu   

转自:
http://my.oschina.net/yongyi/blog/405198

问题分析

这个在windows下没有碰到过,因为此前跑Tomcat都是以服务而不是命令脚本的形式跑的,而且已经换了一个项目,所以暂时不考察windows下是否存在该问题。

难道是Tomcat版本问题?或者用带内存泄漏保护的Tomcat 7可以解决该问题?尝试将web应用跑在apache-tomcat-6.0.18、apache-tomcat-6.0.35、apache- tomcat-7.0.34,发现均存在无法shutdown.sh进程问题。

难道在CentOS(Linux)下,Tomcat无法用shutdown.sh停掉进程?显然不可能的。于是又把web应用从webapps中移走,换 回tomcat自带的ROOT,果然启动后再shutdown.sh,查找不到原来的tomcat进程了,也就证明了是自己web应用的问题了。

 

解决方案

现在已经确定是web应用的问题了,所以可以提解决方案了。

 

 Kill进程,修改tomcat bin目录下shutdown.sh和catalina.sh文件

忽略日志中的严重警告,因为这是关闭tomcat时候引起的,正常情况下不会发生这种内存泄露情况,而且Tomcat6.18以上版本的Tomcat已经 做了内存泄露保护,交给Tomcat完成吧,我们只需要在shutdown.sh之后,补上一个kill -9 pid即可。要是嫌这样太麻烦了,可以如下这样改:

==============================bin/shutdown.sh
exec "$PRGDIR"/"$EXECUTABLE" stop -force "$@" #加上 -force  

==============================bin/catalina.sh 在PRGDIR=`dirname "$PRG"`后面加上
if [ -z "$CATALINA_PID" ]; then
CATALINA_PID=$PRGDIR/CATALINA_PID
cat $CATALINA_PID
fi

解决Tomcat无法shutdown进程

标签:日志   win   perl   weight   进程   问题分析   window   kill -9   shu   

原文地址:http://www.cnblogs.com/ylz8401/p/6082242.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!