中国制造网外贸站,白银网站建设公司,做企业网站需要准备什么资料,做外汇看哪些网站数据1.top
在服务器上#xff0c;我们可以通过top命令查看各个进程的cpu使用情况#xff0c;它默认是按cpu使用率由高到低排序的 由上图中#xff0c;我们可以找出pid为21340的java进程#xff0c;它占用了最高的cpu资源
2. top -Hp pid
通过top -Hp 21340可以查看该进程下我们可以通过top命令查看各个进程的cpu使用情况它默认是按cpu使用率由高到低排序的 由上图中我们可以找出pid为21340的java进程它占用了最高的cpu资源
2. top -Hp pid
通过top -Hp 21340可以查看该进程下各个线程的cpu使用情况如下 3. jstack pid
通过top命令定位到cpu占用率较高的线程之后接着使用jstack pid命令来查看当前java进程的堆栈状态 jstack21350后内容如下 在thread dump中每个线程都有一个nid我们找到对应的nid5366发现一直在跑24行
4. jstack -l [PID] /tmp/log.txt
其实前3个步骤堆栈信息已经出来啦。但是一般在生成环境我们可以把这些堆栈信息打到一个文件里再回头仔细分析哦~
Dump 文件分析关注重点 runnable线程处于执行中 deadlock死锁重点关注 blocked线程被阻塞 重点关注 Parked停止 locked对象加锁 waiting线程正在等待 waiting to lock 等待上锁 Object.wait()对象等待中 waiting for monitor entry 等待获取监视器重点关注 Waiting on condition等待资源重点关注最常见的情况是线程在等待网络的读写