性能监控分析的命令包括如下:

1、vmstat

2、sar

3、iostat

4、top

5、free

6、uptime

7、netstat

8、ps

9、strace

10、lsof

=====================================================

命令介绍:

top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。

top命令能够实时监控系统的运行状态,并且可以安装CPU、内存和执行时间进行排序,同时top命令还可以通过交互式命令进行设定显示,通过top命令可以查看即时活跃的进程。

top命令用法:

top -hv | -abcHimMsS -d delay -n iterations [-u user | -U user] -p pid [,pid ...]

=====================================================

命令行启动参数解释:

-b :批次模式运行。通过用来将TOP的输出的结果传送给其他程式或存储文件

-c:显示执行任务的命令行

-d:设定延迟时间

-h:帮助

-H:显示线程。当这个设定开启时,将显示所有进程产生的线程

-i:显示空闲的进程

-n:执行次数。一般与-b搭配使用

-u:监控指定用户相关进程

-U:监控指定用户相关进程

-p:监控指定的进程。当监控多个进程时,进程ID以逗号分隔。这个选项只能在命令行下使用

-s:安全模式操作

-S:累计时间模式

-v:显示top版本,然后退出

-M:自动显示内存单位(k/M/G)

=====================================================

下面介绍在top命令执行过程中可以使用的一些交互命令。从使用角度来看,熟练的掌握这些命令比掌握选项还重要一些。这些命令都是单字母的,如果在命令行选项中使用了s选项,则可能其中一些命令会被屏蔽掉。
top交互命令说明:

----------------------------------------------------------------------------------------

1、全局命令

回车、空格:刷新显示信息

?、h:帮助

=:移除所有任务显示的限制

A:交替显示模式切换

B:粗体显示切换

d、s:更改界面刷新时间间隔

G:选择其它窗口/栏位组

I:Irix或Solaris模式切换

u、U:监控指定用户相关进程

k:结束进程

q:退出top

r:重新设定进程的nice值

W:存储当前设定

Z:改变颜色模板

2、摘要区命令

l:字母l,平均负载及系统运行时间显示开关

m:内存及交换空间使用率显示开关

t:当前任务及CPU状态显示开关

1:数字1,汇总显示CPU状态或分开显示每个CPU状态

3、任务区命令

a)     外观样式

b:黑体/反色显示高亮的行/列。控制x和y交换命令的显示样式

x:高亮显示排序的列

y:高亮显示正在运行的任务

z:彩色/黑白显示

b)     显示内容

c:任务执行的命令行或进程名称

f、o:增加和移除进程信息栏位及调整进程信息栏位显示顺序

H:显示线程

S:时间累计模式

u:监控指定用户相关进程

c)      任务显示的数量

i:显示空闲的进程

n或#:设置任务显示最大数量

d)     任务排序(shift+f)

M:按内存使用率排序

N:按PID排序

P:按PID排序

T:按时间+排序

<:按当前排序栏位左边相邻栏位排序

>:按当前排序栏位右边相邻栏位排序

F或O:选择排序栏位

R:反向排序

=====================================================

top命令:

参数解释:

一、TOP前五行统计信息说明

1、第一行是任务队列信息,通uptime命令执行的结果一致。

内容说明:

00:17:40

当前时间

up 23:10

系统运行时间,格式为时:分

3 user

当前登录用户数

load average: 0.20, 0.20, 1.56

系统负载,即任务队列的平均长度。 三个数值分别为  1分钟、5分钟、15分钟前到现在的平均值,它们的数字当然是越小越好。“有多少核心即为有多少负荷”法则: 在多核处理中,你的系统均值不应该高于处理器核心的总数量。

2、 第二、三行为进程和CPU的信息,当有多个CPU时,这些内容可能会超过两行。
内容说明:

Tasks: 740 total

进程总数

1 running

正在运行的进程数

738 sleeping

睡眠的进程数

1 stopped

停止的进程数

0 zombie

僵尸进程数

%Cpu(s):  1.8 us

用户空间占用CPU百分比

0.1% sy

内核空间占用CPU百分比

0.1% ni

用户进程空间内改变过优先级的进程占用CPU百分比

99.7% id

空闲CPU百分比

0.0% wa

等待输入输出的CPU时间百分比

0.0% hi

硬中断(Hardware IRQ)占用CPU的百分比

0.0% si

软中断(Software Interrupts)占用CPU的百分比

0.0% st

(Steal time) 是当 hypervisor 服务另一个虚拟处

理器的时候,虚拟 CPU 等待实际 CPU 的时间的百分比

3、第四五行为内存信息

内容说明:

Mem : 16018732 total

物理内存总量

9856504 used

使用的物理内存总量

1749232 free

空闲内存总量

4412996 buffers

用作内核缓存的内存量

Swap: 33554428 total

交换区总量

4324300 used

使用的交换区总量

29230128 free

空闲交换区总量

189640k  cached

缓冲的交换区总量。 内存中的内容被换出到交换区,而后又被换入到内存,但使用过的交换区尚未被覆盖, 该数值即为这些内容已存在于内存中的交换区的大小。相应的内存再次被换出时可不必再对交换区写入。

二、进程信息说明

列名

含义

PID

进程id

PPID

父进程id

RUSER

Real user name

UID

进程所有者的用户id

USER

进程所有者的用户名

GROUP

进程所有者的组名

TTY

启动进程的终端名。不是从终端启动的进程则显示为 ?

PR

优先级

NI

nice值。负值表示高优先级,正值表示低优先级

P

最后使用的CPU,仅在多CPU环境下有意义

%CPU

上次更新到现在的CPU时间占用百分比

TIME

进程使用的CPU时间总计,单位秒

TIME+

进程使用的CPU时间总计,单位1/100秒

%MEM

进程使用的物理内存百分比

VIRT

进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES

SWAP

进程使用的虚拟内存中,被换出的大小,单位kb。

RES

进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA

CODE

可执行代码占用的物理内存大小,单位kb

DATA

可执行代码以外的部分(数据段+栈)占用的物理内存大小,单位kb

SHR

共享内存大小,单位kb

nFLT

页面错误次数

nDRT

最后一次写入到现在,被修改过的页面数。

S

进程状态。

D=不可中断的睡眠状态

R=运行

S=睡眠

T=跟踪/停止

Z=僵尸进程

COMMAND

命令名/命令行

WCHAN

若该进程在睡眠,则显示睡眠中的系统函数名

Flags

任务标志,参考 sched.h

说明:默认情况下仅显示比较重要的  PID、USER、PR、NI、VIRT、RES、SHR、S、%CPU、%MEM、TIME+、COMMAND  列。

可以通过快捷键更改显示内容:

(1)更改显示内容通过 f键可以选择显示的内容。

按 f 键之后会显示列的列表,按 a-z  即可显示或隐藏对应的列,最后按回车键确定。

(2)按o键可以改变列的显示顺序。

按小写的 a-z 可以将相应的列向右移动,而大写的 A-Z  可以将相应的列向左移动。最后按回车键确定。

按大写的 F 或 O 键,然后按 a-z 可以将进程按照相应的列进行排序。而大写的  R 键可以将当前的排序倒转。

设置完按回车返回界面。

=====================================================

使用实例说明:

1、多核CPU监控

在top视图下,按数字键1,可以监控每个CPU的状态,如下图:

再次按数字键1则返回初始状态,如下图:

2、高亮显示当前运行的进程

输入字母'b'(打开/关闭加量效果),见下图:

我们发现进程id为117338的“top”进程被加亮了,top进程就是视图第二行显示的唯一的运行态(runing)的那个进程,可以通过敲击“y”/‘b’键关闭或打开运行态进程的加亮效果。

3、进程字段排序

默认进入top时,各进程是按照CPU的占用量来排序的,在下图中进程ID为3831的java进程排在第一(cpu占用4.6%),进程ID为154677的nxlog进程排在第二(cpu占用2.6%)

敲击键盘“x”(打开/关闭排序列的加亮效果),top的视图变化如下:

可以看到,top默认的排序列是“%CPU”;然后我们通过”shift + >”或”shift + <”可以向右或左改变排序列

下图是按一次”shift + >”的效果图,视图现在已经按照%MEM来排序。

4、显示 完整命令

#top -c

结果如下图:

5、以批处理模式显示程序信息

命令:top -b

6、以累积模式显示程序信息

命令:top -S

7、设置信息更新次数

命令:top -n 2   //表示更新两次后停止更新显示

8、设置信息更新时间

命令:top -d 3  //表示更新周期为3秒

9、显示指定的进程信息

命令:top -p 3921

显示结果如下:

=====================================================

参考文档:

http://blog.csdn.net/truelove12358/article/details/50502191

https://www.cnblogs.com/vurtne-lu/p/6550602.html

Linux性能监控分析命令(四)—top命令介绍的更多相关文章

  1. Linux性能监控分析命令(五)—free命令介绍

    性能监控分析的命令包括如下:1.vmstat2.sar3.iostat4.top5.free6.uptime7.netstat8.ps9.strace10.lsof 命令介绍:free命令是监控Lin ...

  2. Linux性能监控分析命令(三)—iostat命令介绍

    性能监控分析的命令包括如下: 1.vmstat 2.sar 3.iostat 4.top 5.free 6.uptime 7.netstat 8.ps 9.strace 10.lsof 命令介绍: i ...

  3. Linux性能监控分析命令(二)—sar命令介绍

    性能监控分析的命令包括如下: 1.vmstat 2.sar 3.iostat 4.top 5.free 6.uptime 7.netstat 8.ps 9.strace 10.lsof ======= ...

  4. linux性能监控分析及通过nmon_analyse生成分析报表

    nmon是一款分析 AIX 和 Linux 性能的免费工具 nmon 工具还可以将相同的数据捕获到一个文本文件,便于以后对报告进行分析和绘制图形.输出文件采用电子表格的格式 (.csv). 性能介绍 ...

  5. 【转载】linux性能监控分析及通过nmon_analyse生成分析报表

    转载地址:http://www.cnblogs.com/Lam7/p/6604832.html nmon是一款分析 AIX 和 Linux 性能的免费工具 nmon 工具还可以将相同的数据捕获到一个文 ...

  6. Linux性能监控分析命令

    vmstat sar iostat top free uptime netstat ps strace lsof

  7. Linux性能监控分析命令(一)—vmstat命令详解

    一.vmstat介绍 语法格式: vmstat [-V] [-n] [-S unit] [delay [count]] -V prints version. -n causes the headers ...

  8. Linux 性能监控分析

    好文,参考 http://blog.csdn.net/hexieshangwang/article/details/47187185

  9. Linux 性能监控的18个命令行工具

    对于系统和网络管理员来说每天监控和调试Linux系统的性能问题是一项繁重的工作.在IT领域作为一名Linux系统的管理员工作5年后,我逐渐 认识到监控和保持系统启动并运行是多么的不容易.基于此原因,我 ...

随机推荐

  1. django Rest Framework----APIView 执行流程 APIView 源码分析

    在django—CBV源码分析中,我们是分析的from django.views import View下的执行流程,这篇博客我们介绍django Rest Framework下的APIView的源码 ...

  2. RabbitMQ--work queues(二)

    封装一个task到一个message,并发送到queue.consumer会去除task并执行这个task. 这里我们简化了操作,发送消息到队列中,consumer取出消息计算里面'.'号有几个就sl ...

  3. 无需编译app切换线上、测试环境

    在咱们测试过程中,经常需要切换测试环境和线上环境.大致有如下几个方案. 一.服务器地址编译到app中 此种方式需要在代码里保存两套配置,一套指向线上,一套指向测试.通过编译参数分别生成测试包.线上包. ...

  4. 开发者常用的 Sublime Text 3 插件

    1.官网下载 Sublime Text 3 (已有安装包的,请忽略) Sublime Text 官网下载地址 : http://www.sublimetext.com/ 2.打开 Sublime Te ...

  5. JVM性能调优监控工具——jps、jstack、jmap、jhat、jstat、hprof使用详解

    摘要: JDK本身提供了很多方便的JVM性能调优监控工具,除了集成式的VisualVM和jConsole外,还有jps.jstack.jmap.jhat.jstat.hprof等小巧的工具,本博客希望 ...

  6. INSTEAD OF与AFTER触发器

    INSTEAD OF 触发器 AFTER 触发器(也叫“FOR”触发器)会在触发 insert.update 或是delect 动作之后执行.例如,一个 Employees 表上的 AFTER 触发器 ...

  7. Ubuntu CEPH快速安装

    一.CEPH简介 不管你是想为云平台提供Ceph 对象存储和/或 Ceph 块设备,还是想部署一个 Ceph 文件系统或者把 Ceph 作为他用,所有 Ceph 存储集群的部署都始于部署一个个 Cep ...

  8. 最邻近规则分类KNN算法

    例子: 求未知电影属于什么类型: 算法介绍: 步骤:  为了判断未知实例的类别,以所有已知类别的实例作为参照      选择参数K      计算未知实例与所有已知实例的距离      选择最近K个已 ...

  9. hdu 1398 整数划分变形 (母函数)

    有1,4,9,16,25.....2^17这么多面值的硬币,问任意给定一个不大于300的正整数面额,用这些硬币来组成此面额总共有多少种组合种数 比如10全14 + 6个 14+4+1+19+1 求(1 ...

  10. mycat性能调优

    http://blog.csdn.net/wangshuang1631/article/details/69056070