linux下性能分析命令[总结]

简介:

1、前言

  在linux下开发程序,为了追求高性能,经常需要测试程序的性能,包括cpu、内存、io、网络等等使用情况。liunx下提供了众多命令方便查看各种资源的使用情况。经常用的有ps、top、free、mpstat、iostat、vmstat、netstat。

2、ps、top、free命令

  ps用于查看系统中进程的情况,top能够实时显示系统中各个进程的资源占用状况,free命令可以显示Linux系统中空闲的、已用的物理内存及swap内存,及被内核使用的buffer。

 

3、mpstat命令

  用于获取 CPU 相关统计信息,命令执行结果如下图所示:

 

%user         表示处理用户进程所使用 CPU 的百分比。

%nice         表示使用 nice 命令对进程进行降级时 CPU 的百分比。nice 命令更改进程的优先级。 

%system    表示内核进程使用的 CPU 百分比  

%iowait      表示等待进行 I/O 所使用的 CPU 时间百分比  

%irq          表示用于处理系统中断的 CPU 百分比  

%soft        表示用于软件中断的 CPU 百分比  

%idle         显示 CPU 的空闲时间  

4、iostat命令

  性能评估的一个主要部分就是磁盘性能,iostat 命令提供了存储接口的性能指标。执行结果下图所示:

 

tps 每秒的传输数量,例如,每秒的 I/O 操作数。注:这只是 I/O 操作的数量;每个操作可能非常大,也可能非常小。

Blk_read/s 每秒从该设备读取的块数。通常,块的大小为 512 字节。这是一个磁盘利用率较好的值。

Blk_wrtn/s 每秒写入该设备的块数

Blk_read 到目前为止从该设备读取的块数。注意,这并不是正在发生的情况。很多块已经从该设备读取。可能现在什么也没有读取。观察一段时间,看是否有变化。

Blk_wrtn 写入该设备的块数。

5、vmstat命令

  显示所有与内存和进程相关信息的命令,执行结果如下所示:

procs 显示进程数

r 等待运行的进程。系统上的负载越多,等待运行 CPU 周期的进程数量越多。

b 不可中断睡眠的进程,也称为“被阻塞”的进程。这些进程最有可能等待 I/O,但也可能等待其他事情。

wpd,free,buff,cache显示了内存值班

wpd 虚拟内存或交换内存的数量(以 KB 为单位)

free 可用物理内存的数量(以 KB 为单位)

buff 用作缓冲区的内存数量(以 KB 为单位)

cache 用作缓存的物理内存数量(以 KB 为单位)

si so 显示了交换活动:

si 将内存从磁盘交换回物理 RAM 的速率(以 KB/秒为单位)

so 将内存从物理 RAM 交换到磁盘的速率(以 KB/秒为单位)

bi,bo显示了 I/O 活动:

bi 系统向块设备发送数据的速率(以块/秒为单位)

bo 系统从块设备中读取数据的速率(以块/秒为单位)

in,cs 显示了系统相关活动:

in 系统每秒接收到的中断数

cs 在进程空间中切换上下文的速率(以数量/秒为单位)


us,sy,id,wa 显示了 CPU 负载的信息:

us 显示花费在用户进程中的 CPU 百分比。Oracle 进程属于这一类。

sy 系统进程(如所有根进程)使用的 CPU 百分比

id 可用 CPU 百分比

wa 花费在“等待 I/O”上的百分比

6、netstat命令

  用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。

相关文章
|
10天前
|
Web App开发 Linux 网络安全
工作中常用到的Linux命令
工作中常用到的Linux命令
|
10天前
|
Web App开发 Java Linux
Linux之Shell基本命令篇
Linux之Shell基本命令篇
Linux之Shell基本命令篇
|
17天前
|
Ubuntu 架构师 Java
Linux系统常用命令非常详细建议收藏
Linux系统常用命令非常详细建议收藏
48 0
|
7天前
|
NoSQL Linux Shell
常用的 Linux 命令
常用的 Linux 命令
28 9
|
1天前
|
域名解析 网络协议 Linux
Linux 中的 Nslookup 命令怎么使用?
【4月更文挑战第12天】
17 6
Linux 中的 Nslookup 命令怎么使用?
|
2天前
|
运维 网络协议 Unix
18.系统知识-Linux常用命令
18.系统知识-Linux常用命令
|
3天前
|
网络协议 Ubuntu Linux
Linux 下 TFTP 服务搭建及 U-Boot 中使用 tftp 命令实现文件下载
Linux 下 TFTP 服务搭建及 U-Boot 中使用 tftp 命令实现文件下载
|
3天前
|
Linux Go
Linux命令Top 100驱动人生! 面试必备
探索Linux命令不再迷茫!本文分10部分详解20个基础命令,带你由浅入深掌握文件、目录管理和文本处理。 [1]: <https://cloud.tencent.com/developer/article/2396114> [2]: <https://pan.quark.cn/s/865a0bbd5720> [3]: <https://yv4kfv1n3j.feishu.cn/docx/MRyxdaqz8ow5RjxyL1ucrvOYnnH>
46 0
|
6天前
|
缓存 运维 监控
Linux系统监控利器:探索常用命令及数据保存技巧
Linux系统监控利器:探索常用命令及数据保存技巧
23 4
Linux系统监控利器:探索常用命令及数据保存技巧
|
9天前
|
Linux 索引
linux 文件查找 和文件管理常用命令
linux 文件查找 和文件管理常用命令
19 0