Linux上快速定位Java代码问题行

生产环境中,经常会遇到CPU持续飙高或内存、IO飙高,如何快速定位问题点是很多新手头疼的问题,只能通过经验和代码推理,其实这里针对Java程序可以通过top和jstack命令,快速定位到问题代码。

Top命令的输出

具体定位之前,先补全一下top命令的输出解释,top 命令的输出是动态更新的,通常每3秒刷新一次,但这个刷新频率可以通过交互命令 d 来调整。看一个top命令的输出样例:

top - 16:45:26 up 5 days,  3:12,  1 user,  load average: 0.00, 0.01, 0.05
Tasks: 239 total,   1 running, 238 sleeping,   0 stopped,   0 zombie
%Cpu(s):  1.0 us,  0.6 sy,  0.0 ni, 98.4 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  16280104 total,  10346652 free,   2689256 used,   3256196 buff/cache
KiB Swap:   2097148 total,   2097148 free,        0 used.   7256332 avail Mem

  PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND      
 1234 user1     20   0 12345672 1048576  524288 S  0.7  6.4   2:34.16 java     
    1 root      20   0       0      0      0 S  0.0  0.0   0:03.16 init      
   72 www-data  20   0  344736   8192  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

糖拌西红柿多放醋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值