性能优化--实战利用arthas排查java服务cpu占用过高的问题
发布时间:2024年01月09日
使用jps -l查看目前的java应用进程
启动arthas,选择需要监控的进程
-
dashboar查看该应用整体情况
- 使用thread命令,查看占用cpu过高的几个线程ID
-
- 然后使用thread 线程ID查看具体线程在执行哪些内容,可以看到对应的类和方法
-
正在上传…
重新上传
取消
正在上传…
重新上传
取消
正在上传…
重新上传
取消
- 使用jad反编译 对应类的方法,分析具体的代码,定位问题
-
正在上传…
重新上传
取消
正在上传…
重新上传
取消
可以看到此处,只要有一个线程的任务执行不完,就会死循环大量消耗cpu资源;
接下来就是对发现的问题进行处理,可以从业务设计层面或者代码层次处理;
例如此处,可以换一种等待线程结束的方法
正在上传…
重新上传
取消
文章来源:https://blog.csdn.net/worldkingpan/article/details/129737016
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:chenni525@qq.com进行投诉反馈,一经查实,立即删除!