线上CPU飙升100%问题排查
2024-10-25
NEW个对象
线上CPU飙升100%问题排查?
1、查看cpu的使用情况
top命令,找到使用cpu使用最高的线程
2、实用工具Arthas
启用工具,使用Arthas命令"thread -n 3 -i 1000"查看当前"最忙"(耗CPU)的三个线程。
3、分析输出情况,找到代码对应的位置
4、分析代码是否问题。
造成cpu飙升的常见原因:
1、死锁
2、频繁的full gc
3、死循环
4、第三方bug
5、服务器配置太差
6、等等
----------------------------------------------------------
定位导致cpu过高的位置,还可以通过jstack命令:
1、top命令,找到使用cpu使用最高的进程pid
2、top -Hp 进程pid。获取进程里那个线程占用cpu最高。
2、将线程pid,转换为16进制。
3、jstack 命令,输入日志。
《jstack 进程pid | grep -a 200 线程pid的十六进制》
4、根据日志,找到代码位置。
5、分析代码的问题。
上一篇:日常开发中Linux的常用命令
下一篇: 无
相关文章
-
日常开发中Linux的常用命令
这只说一些比较常用的命令,如果是一些复杂命令,建议百度。
NEW个对象 2024-10-12
-
线上CPU飙升100%问题排查
线上CPU飙升100%问题排查?
NEW个对象 2024-10-25