java应用性能分析-top命令

功能:显示当前系统正在执行的进程的相关信息,包括进程ID、内存占用率、CPU占用率等

执行top,结果如下:

 参数意义

第一行:等价于执行 >>uptime 命令

top - 16:35:54 up 58 days,  6:13,  1 user,  load average: 3.66, 3.60, 3.79
16:35:54:当前系统时间
up 58 days,  6:13:系统已运行58天,6小时13分钟
1 user:当前登录用户1个
load average: 3.66, 3.60, 3.79(最近5,10,15分钟的平均负载)

第二行:任务信息

Tasks: 484 total, 4 running, 479 sleeping, 0 stopped, 1 zombie
484个进程,4个正在运行,479个处于睡眠状态,1个是僵尸态

第三行:CPU状态

us:user CPU time        用户进程CPU占比
sy:system CPU time   系统进程CPU占比
ni: nice CPU time        用户进程中改变了优先级的进程CPU占比
id: idle                         空闲CPU占比
wa:iowait                     等待I/O的进程CPU占比
hi: hardware interrupt request    硬中断CPU占比
si: software interrupt  request    软中断CPU占比
st: steal time
 
第四行和第五行:内存和交换空间情况,可执行free -h单独查看
 
第六行:PID   USER   PR   NI   VIRT   RES   SHR  S   %CPU   %MEM    TIME+   COMMAND 
PID:进程id
USER:进程所属用户
PR:进程的调度优先级。(rt表示实时态度)
NI:进程的nice值(优先级)。越小的值意味着越高的优先级。负值表示高优先级,正值表示低优先级
VIRT:进程使用(申请)的虚拟内存(kb),进程使用的虚拟内存总量,单位kb   VIRT=SWAP+RES   (virtual memory usage)
RES:进程使用的驻留内存(kb),指非交换物理内存大小。进程使用的、未被换出的物理内存大小, RES=CODE+DATA(resident memory usage)
SHR:进程使用的共享内存(kb)
S:进程状态(R – 运行态,S – 睡眠态,T – 被跟踪或已停止,Z – 僵尸态,D - 不可中断的睡眠态)
%CPU:从上一次更新到现在,进程所使用的CPU时间百分比
%MEM:进程使用的物理内存百分比
TIME+:任务启动后到现在所使用的全部CPU时间,精确到百分之一秒
COMMAND:运行进程所使用的命令。进程名称(命令名/命令行)

使用技巧

命令界面输入:

q:退出top命令界面

大写P:按照CPU占用降序排列

大写M:按照内存占用降序排列

开挂r:重新安排一个进程的优先级别。系统提示输入需要改变的进程PID以及需要设置的进程优先级值(正值使优先级降低,负值拥有更高的优先级,默认10)

top -d [n] 每隔n秒显示一次

top -p [pid,pid,pid.........]:监控指定进程

猜你喜欢

转载自www.cnblogs.com/yb38156/p/12214769.html