java遇到问题分析工具

总结一下以前和最近在查询功能或者现网环境问题时所用到的命令和工具;

现网CPU高的问题:

1,top,top命令可以实时看到最近那个pid在耗费大量的CPU资源,可以看到如下:


可以找到最大CPU的pid。

2,ps -ef|grep pid  可以看到是什么服务。

3,ps -mp pid -o THREAD,tid,time,如果还想看到该pid所占用的size,内存,可以后面加 size,%mem,最后像这样


备注一下:Futex是Fast Userspace muTexes的缩写,简称快速用户交换体。Futex具体参考http://blog.csdn.net/wangpeihuixyz/article/details/41703773

4)从上图中可以看到pid中的各个线程id,可以找到相关线程的情况。

命令如下:jstack pid | grep tid -A  。    A是时间,单位是毫秒,命令之后如下:


该线程运行情况再根据服务代码,可以定位到问题所在。

如有问题,可以留言,谢谢

猜你喜欢

转载自blog.csdn.net/wangdonghello/article/details/70142377