top命令详解

top -H -p 20589 查看进程内各个线程占用的CPU百分比
可以只要看RES那个,或者%MEM
RES=%MEM*物理内存大小
RES=8.5%*16GB=1.36GB
VIRT指的是虚拟内存,RES指的是实际内存
 
查看线程的十六进制,方便堆栈中查找:printf "%x" pid

 

 
监控java线程数:
ps -eLf | grep java | wc -l
监控网络客户连接数:
netstat -n | grep tcp | grep 侦听端口 | wc -l

 
load average:数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了。

S:这个是进程的状态。它有以下不同的值:

  • D - 不可中断的睡眠态。
  • R – 运行态
  • S – 睡眠态
  • T – 被跟踪或已停止
  • Z – 僵尸态

%CPU:自从上一次更新时到现在任务所使用的CPU时间百分比。

%MEM:进程使用的可用物理内存百分比。

tasks: 进程总数,运行的进程数,睡眠的进程数,停止的进程数,僵尸 进程数
 
top回车
按数字1可切换到每个CPU的使用率
 
jstack pid>xxx.txt
原文地址:https://www.cnblogs.com/seamy/p/15649057.html