搜文章
推荐 原创 视频 Java开发 iOS开发 前端开发 JavaScript开发 Android开发 PHP开发 数据库 开发工具 Python开发 Kotlin开发 Ruby开发 .NET开发 服务器运维 开放平台 架构师 大数据 云计算 人工智能 开发语言 其它开发
Lambda在线 > 程序员进进 > 记一次TOMCAT一段时间自动关闭

记一次TOMCAT一段时间自动关闭

程序员进进 2020-07-29
程序员进进推荐搜索
java内存异常
tomcat关闭
java线程使用
tomcat占用内存

    最近同事开发的一个项目部署上线后用过几天就TOMCAT自动关闭,并且该项目没有开通对外访问。通过阿里云监控台查看,从升级后系统内存占用上升趋势,CPU等信息没有太大变化。

记一次TOMCAT一段时间自动关闭

打印服务器日志后发现全是线程日志。并且过一段时间后会发现停留大日志里的线程数逐步增加,通过命令定时查看服务器观察应用线程数,按时间在递增。综合以上分析初步定位是开启线程数多没有关闭导致程序占用系统内存多从而TOMCAT关闭。

top --查看JAVA线程IDtop -Hp pid -d 1 -n 1  --查看当前的较高的线程jstack 28174 > dump.txt --打印日志

记一次TOMCAT一段时间自动关闭

ps huH p  pid  | wc -l  -- 发现每隔1分钟线程数一直在增加。

按日志查到程序使用线程情况,并且全文搜索程序使用线程的方法,再接合开发的同事提供的信息,定位问题。

优化后:

优化上线后再观察线程数正常。

分析:使用ScheduledExecutorService启动线程时一定要关闭。

版权声明:本站内容全部来自于腾讯微信公众号,属第三方自助推荐收录。《记一次TOMCAT一段时间自动关闭》的版权归原作者「程序员进进」所有,文章言论观点不代表Lambda在线的观点, Lambda在线不承担任何法律责任。如需删除可联系QQ:516101458

文章来源: 阅读原文

相关阅读

关注程序员进进微信公众号

程序员进进微信公众号:chengxuyuanjinjin

程序员进进

手机扫描上方二维码即可关注程序员进进微信公众号

程序员进进最新文章

精品公众号随机推荐