如何通过Arthas定位并解决JVM CPU占用过高的问题?
- 内容介绍
- 文章标签
- 相关推荐
本文共计866个文字,预计阅读时间需要4分钟。
目录+安装+小试+查找CPU的元数据+查看线程栈的参数+安装+小试+记一次使用arthas+排查jvm中CPU占用过高问题。这个工具强大到崩溃了+压榨了我目前使用的全部JVM工具。+curl -O https://arthas.aliyun.com/arthas.zip
目录
- 安装 小试
- 找出CPU的元凶
- 查看线程栈的参数
安装 小试
记一次使用arthas排查jvm中CPU占用过高问题。这工具屌爆了 碾压我目前使用的全部JVM工具。
curl -O arthas.aliyun.com/arthas-boot.jar java -jar arthas-boot.jar --repo-mirror aliyun --use-http
jar后面的参数也可以不加 加上只是为了下载速度更快
接下来arthas控制台中显示了当前机器上jvm进程列表 输入需要排查的jvm进程号即可进入监控命令模式
找出CPU的元凶
处理问题之前先想想如何去找到问题的原因这个是解决问题个人觉得最重要的一步。
当前的现状是jvm启动后 cpu直接飙升到80+%。而内存是正常的,可以认为大概率是某个线程占用了计算资源 导致的。所以第一步需要先把占用过高线程给揪出来。
这次使用arthas排查。也顺便提一下以前记录过用top -Hp的方法找出占用资源的线程PID 方法top -Hp方法参考。
本文共计866个文字,预计阅读时间需要4分钟。
目录+安装+小试+查找CPU的元数据+查看线程栈的参数+安装+小试+记一次使用arthas+排查jvm中CPU占用过高问题。这个工具强大到崩溃了+压榨了我目前使用的全部JVM工具。+curl -O https://arthas.aliyun.com/arthas.zip
目录
- 安装 小试
- 找出CPU的元凶
- 查看线程栈的参数
安装 小试
记一次使用arthas排查jvm中CPU占用过高问题。这工具屌爆了 碾压我目前使用的全部JVM工具。
curl -O arthas.aliyun.com/arthas-boot.jar java -jar arthas-boot.jar --repo-mirror aliyun --use-http
jar后面的参数也可以不加 加上只是为了下载速度更快
接下来arthas控制台中显示了当前机器上jvm进程列表 输入需要排查的jvm进程号即可进入监控命令模式
找出CPU的元凶
处理问题之前先想想如何去找到问题的原因这个是解决问题个人觉得最重要的一步。
当前的现状是jvm启动后 cpu直接飙升到80+%。而内存是正常的,可以认为大概率是某个线程占用了计算资源 导致的。所以第一步需要先把占用过高线程给揪出来。
这次使用arthas排查。也顺便提一下以前记录过用top -Hp的方法找出占用资源的线程PID 方法top -Hp方法参考。

