性能监控万能命令之top

性能监控万能命令之top

top命令是Linux下常用的性能分析工具,能够实时监控系统的运行状态,主要显示系统中各个进程的资源使用情况,并根据cpu及内存等进行排序,类似于windows系统中的任务管理器,可以实时查看系统的各种资源状态,是测试工程师尤其是性能测试工程师必须要掌握的命令。

性能监控万能命令之top

下面具体给大家解释一下具体各个部分的信息,代表什么含义。

首先前五行显示的系统资源的总体统计信息:

第一行:类似于update命令,他可以快速简洁的获取系统的负载,依次显示现在时间,多少个用户,系统1分钟、5分钟、15分钟的平均负载。

性能监控万能命令之top

up xx days, HH:MM:系统当前时间和系统已运行时间, 当前登录用户数,系统平均负载可以运行任务的平均数量(3个数值分别统计最近1,5,15分钟的系统平均负载)

系统平均负载:单核CPU情况下,0.00 表示没有任何负荷,1.00表示刚好满负荷,超过1侧表示超负荷,理想值是0.7。

第二行:Tasks 任务(进程)

性能监控万能命令之top

系统现在共有的进程数,运行中进程数,休眠中的进程数,停止状态的进程数,僵尸状态进程数。

第三行:cpu状态信息,具体属性说明如下:

性能监控万能命令之top

统计使用CPU使用率:1-%id

  • 0.2% us:用户空间占用CPU的百分比

  • 0.3% sy:内核空间占用CPU的百分比

  • 0.0% ni:改变过优先级的进程占用CPU的百分比

  • 99.6% id:空闲CPU百分比,反映一个系统cpu的闲忙程度,越大越空闲。

  • 0.0% wa:IO等待占用CPU的百分比

  • 0.0% hi:硬中断(Hardware IRQ)占用CPU的百分比

  • 0.0% si:软中断(Software Interrupts)占用CPU的百分比

  • 0.0% st:Steal time虚拟机被hypervisor偷去的CPU时间

第四行:内存信息

性能监控万能命令之top

  • 物理内存总量:total

  • 空闲的内存总量:free

  • 使用中的内存总量:used

  • 缓存的内存总量:buffers

第五行(Swap):交换分区

性能监控万能命令之top

  • 总的交换空间大小;

  • 空余空间交换空间大小;

  • 已经使用交换空间大小;

  • cached缓冲的交换空间大小

进程列表说明:

  • PID: 进程pid

  • USER: 拉起进程的用户

  • PR: 该列值加100为进程优先级,若优先级小于100,则该进程为实时(real-time)进程,否则为普通(normal)进程,实时进程的优先级更高,更容易获得cpu调度,以上输出结果中,java进程优先级为120,是普通进程,had进程优先级为2,为实时进程,migration 进程的优先级RT对应于0,为最高优先级

  • NI: 进程的nice优先级值,该列中,实时进程的nice值为0,普通进程的nice值范围为-20~19

  • VIRT: 进程所占虚拟内存大小(默认单位kB)

  • RES: 进程所占物理内存大小(默认单位kB)

  • SHR: 进程所占共享内存大小(默认单位kB)

  • S: 进程的运行状态

  • %CPU: 采样周期内进程所占cpu百分比

  • %MEM: 采样周期内进程所占内存百分比

  • TIME+: 进程使用的cpu时间总计

  • COMMAND: 拉起进程的命令

常用参数说明:

  • M:根据驻留内存大小进行排序;

  • P:根据CPU使用百分比大小进行排序;

  • T:根据时间/累计时间进行排序;

  • d:屏幕刷新间隔时间;

  • p<进程号>:指定进程;

性能监控万能命令之top

码字不易,点个在看

性能监控万能命令之top