Linux CPU 飙升 排查五步法

排查思路-五步法

1. top命令定位应用进程pid

找到最耗时的CPU的进程pid

复制代码
top

2. top-Hp[pid]定位应用进程对应的线程tid

找到最消耗CPU的线程ID

复制代码
// 执行 top -Hp [pid] 定位应用进程对应的线程 tid
// 按shift + p 组合键,按照CPU占用率排序
> top -Hp 11168

3. printf"%x\n"[tid]将tid转换为十六进制

将线程pid转换为16进制

复制代码
// printf "%x\n" [tid]  将tid转换为十六进制
> printf "%x\n" 26215
6667

4.jstack[pid]|grep-A10[tid的十六进制]打印堆栈信息

查看线程的堆栈信息

复制代码
// jstack [pid] | grep -A 10 [tid的十六进制]  打印堆栈信息
> jstack 26215 | grep -A 10 6667

可以查看到代码具体代码行报错

5.根据堆栈信息分析问题

找到对应代码,分析代码

相关推荐
ZePingPingZe6 分钟前
秒杀-库存超卖&流量削峰
java·分布式
horizon727411 分钟前
【Redis】Redis 分片集群搭建与故障转移实战指南
java·redis
想学后端的前端工程师11 分钟前
【Java设计模式实战应用指南:23种设计模式详解】
java·开发语言·设计模式
小白勇闯网安圈19 分钟前
Java的集合
java·开发语言
大学生资源网22 分钟前
基于springboot的乡村信息化管理系统的研究与实现(源码+文档)
java·spring boot·后端
鹿角片ljp24 分钟前
力扣 83: 删除排序链表中的重复元素(Java实现)
java·leetcode·链表
Mr Tang36 分钟前
Docker日志查看和应用日志查看命令大全
java·开发语言
invicinble37 分钟前
java处理数据合集
java·开发语言
Java水解1 小时前
Spring Bean生命周期深度剖析:从创建到销毁的完整旅程
spring boot·后端
Json_1 小时前
springboot框架对接物联网,配置TCP协议依赖,与设备通信,让TCP变的如此简单
java·后端·tcp/ip