您的位置:首页 > 运维架构 > Tomcat

tomcat启动时报swap空间用尽问题解决

2018-01-26 17:43 309 查看
下午,同事在linux应用服务器重启tomcat的时候,一直启动不起来,后来用free命令查看系统资源的时候发现swap的free资源是0,(下图是问题处理之后的情况)



于是就想着查看下到底是哪些进程在占用资源,用如下命令进行查看
linux下获取占用CPU资源最多的10个进程,可以使用如下命令组合:
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head
linux下获取占用内存资源最多的10个进程,可以使用如下命令组合:
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head

结果发现:占用内存资源最多的几个进程全部是tomcat的进程,于是用命令kill -9 进程号,把所有tomcat的进程全部干掉,swap资源释放,重启tomcat之后系统正常。

经过原因分析发现,应该是同事在执行新tomcat关闭脚本sh shutdown.sh命令的时候tomcat没有关闭成功,结果他又执行了sh startup.sh命令去重启tomcat,发现没有启动成功,他又执行了几次,结果导致tomcat启了很多进程,最终将内存资源耗尽。为了避免这个问题,要求项目组在启动tomca的时候一定要确定tomcat进程关闭之后,才能去启动tomcat。我们的步骤如下:

1、先执行 #sh shutdown.sh 命令

2、#ps -ef|grep java  查看tomcat进程是否存在

3、如果存在,则执行#kill -9 进程号,对tomcat进程强制杀掉 
4、执行 #sh startup.sh 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: