1.jps 找到对应的Java服务
2.top 查看当前所有服务的运行情况,通过cpu占比,等到pid
3.top -H p pid(来自top命令查询到的pid),获取线程情况,此时也有pid 和 cpu占比信息(从高到底挨个排查)
4.printf '%x\n' pid(来自top -H p 命令查询到的pid),获取十六进制的pid
5. jstack 13608 | grep -A10 pid(来之printf '%x\n' 命令查询到的pid),获取线程打印信息,定位到问题
6.jstat -gc pid 10s(来自top命令查询的pid),10s打印一次gc详情
本文详细介绍了如何使用jps、top、jstack和jstat等工具进行Java服务的性能监控与问题定位。首先通过jps找到Java服务,再用top查看CPU使用情况,然后利用jstack分析线程状态,结合jstat观察GC行为,以此排查高CPU占用和内存问题,实现服务性能优化。

3418

被折叠的 条评论
为什么被折叠?



