如何排查CPU占用过高的问题?谈谈你的分析思路和定位步骤

青旅半醒 2022-09-16 12:22 188阅读 0赞

1.使用top命令找出CPU占比最高的
2.使用ps -ef或者jps进一步定位 示例:jps -l 或 ps -ef | grep java|grep -v grep
3.定位到具体线程或者代码
ps -mp 进程 -o THREAD,tid,time
-m 显示所有的线程
-p pid进程使用cpu的时间
-o 该参数后是用户自定义格式
4.将需要的线程ID转换为16进制格式(英文小写格式) printf “%x\n” 有问题的线程ID
5.jstack 进程ID | grep tid(16进制线程ID小写英文) -A60

发表评论

表情:
评论列表 (有 0 条评论,188人围观)

还没有评论,来说两句吧...

相关阅读

    相关 redis cpu占用排查

    redis是用"单线程-多路复用io模型"来实现高性能的内存数据服务的,这种机制避免了使用锁,但是同时这种机制在进行sunion之类的比较耗时的命令时会使redis的并发下降。