Linux性能测试 vmstat命令

本文涉及的产品
性能测试 PTS,5000VUM额度
简介: vmstat命令是最常见的Linux/Unix监控工具,可以展现给定时间间隔的服务器的状态值,包括服务器的CPU使用率,内存使用,虚拟内存交换情况,IO读写情况。这个命令是我查看Linux/Unix最喜爱的命令,一个是Linux/Unix都支持,二是相比top,我可以看到整个机器的CPU,内存,IO的使用情况,而不是单单看到各个进程的CPU使用率和内存使用率(使用场景不一样)。

vmstat命令是最常见的Linux/Unix监控工具,可以展现给定时间间隔的服务器的状态值,包括服务器的CPU使用率,内存使用,虚拟内存交换情况,IO读写情况。这个命令是我查看Linux/Unix最喜爱的命令,一个是Linux/Unix都支持,二是相比top,我可以看到整个机器的CPU,内存,IO的使用情况,而不是单单看到各个进程的CPU使用率和内存使用率(使用场景不一样)。

NAME
       vmstat - Report virtual memory statistics
SYNOPSIS
       vmstat [-a] [-n] [delay [ count]]
       vmstat [-f] [-s] [-m]
       vmstat [-S unit]
       vmstat [-d]
       vmstat [-p disk partition]
       vmstat [-V]
   Options
       The -a switch displays active/inactive memory, given a 2.5.41 kernel or better.
       The -f switch displays the number of forks since boot.  This includes the fork, vfork, and clone system calls, and is equivalent to  the  total  number  of
       tasks created. Each process is represented by one or more tasks, depending on thread usage.  This display does not repeat.
       The -m displays slabinfo.
       The -n switch causes the header to be displayed only once rather than periodically.
       The -s switch displays a table of various event counters and memory statistics. This display does not repeat.
       delay is the delay between updates in seconds.  If no delay is specified, only one report is printed with the average values since boot.
       count is the number of updates.  If no count is specified and delay is defined, count defaults to infinity.
       The -d reports disk statistics (2.5.70 or above required)
       The -p followed by some partition name for detailed statistics (2.5.70 or above required)
       The -S followed by k or K or m or M switches outputs between 1000, 1024, 1000000, or 1048576 bytes
       The -V switch results in displaying version information.

 

一般vmstat工具的使用是通过两个数字参数来完成的,第一个参数是采样的时间间隔数,单位是秒,第二个参数是采样的次数,如:

[root@C44 ~]#  vmstat 2 3
procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in    cs us sy id wa
 0  0      0 142020  66240 225220    0    0     1    10  222    22  0  0 100  0
 0  0      0 142020  66240 225220    0    0     0     0 1162    45  0  0 100  0
 0  0      0 141892  66240 225220    0    0     0     0 1096    62  0  0 100  0
[root@C44 ~]#  

2表示每个两秒采集一次服务器状态,3表示采集三次。

 

实际上,在应用过程中,我们会在一段时间内一直监控,不想监控直接结束ctrl+c就行了,例如:

[root@C44 ~]#  vmstat 2 
procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in    cs us sy id wa
 0  0      0 141972  66224 225236    0    0     1    10  221    22  0  0 100  0
 0  0      0 141972  66224 225236    0    0     0    74 1064    34  0  0 100  0
 0  0      0 141972  66224 225236    0    0     0     0 1064    32  0  0 100  0
 0  0      0 141972  66224 225236    0    0     0     0 1054    34  0  0 100  0
 0  0      0 141772  66224 225236    0    0     0     0 1058    62  0  0 100  0


 vmstat命令输出分成六个部分:
  (1)进程procs:
  r:在运行队列中等待的进程数 。
  b:在等待io的进程数 。
  (2)内存memoy:
  swpd:现时可用的交换内存(单位KB)。
  free:空闲的内存(单位KB)。
  buff: 缓冲去中的内存数(单位:KB)。
  cache:被用来做为高速缓存的内存数(单位:KB)。
  (3) swap交换页面
  si: 从磁盘交换到内存的交换页数量,单位:KB/秒。
  so: 从内存交换到磁盘的交换页数量,单位:KB/秒。
  (4) io块设备:
  bi: 发送到块设备的块数,单位:块/秒。
  bo: 从块设备接收到的块数,单位:块/秒。
  (5)system系统:
  in: 每秒的中断数,包括时钟中断。
  cs: 每秒的环境(上下文)切换次数。
  (6)cpu中央处理器:
  cs:用户进程使用的时间 。以百分比表示。
  sy:系统进程使用的时间。 以百分比表示。
  id:中央处理器的空闲时间 。以百分比表示。
     wa:等待IO CPU时间。


 

相关实践学习
通过性能测试PTS对云服务器ECS进行规格选择与性能压测
本文为您介绍如何利用性能测试PTS对云服务器ECS进行规格选择与性能压测。
目录
相关文章
|
1天前
|
Linux
Linux如何快速执行历史命令
Linux如何快速执行历史命令
16 8
|
2天前
|
存储 安全 Linux
Linux passwd命令:守护账户安全的密钥
`passwd`命令是Linux中管理用户密码的关键工具,确保数据安全。它用于更改密码,采用加密存储,并有锁定/解锁账号、设置密码策略等功能。参数如`-d`删除密码,`-l`锁定账号,`-u`解锁。最佳实践包括定期更改复杂密码,保护root密码,谨慎使用无密码选项。了解和正确使用passwd是保障系统安全的重要步骤。
|
2天前
|
SQL 关系型数据库 数据库
深入探索Linux中的pgawk命令
`pgawk`是`awk`的扩展,带有对PostgreSQL的支持,允许在`awk`脚本中执行SQL查询,简化文本与数据库交互。它保持了`awk`的全部功能,且高效传输数据。使用时,可以通过参数如`-d`、`-h`、`-p`、`-U`和`-W`指定数据库连接详情。示例中展示了如何结合`pgawk`和`psql`从文本文件获取销售数据并联查数据库获取客户名称。在使用时要注意安全连接、优化SQL、测试验证和版本兼容性,以实现有效且安全的数据处理。
|
1天前
|
NoSQL 应用服务中间件 Linux
宝塔linux面板命令大全
宝塔linux面板命令大全
9 2
|
2天前
|
安全 Linux 数据处理
深入探究Linux的pathchk命令
`pathchk`是Linux命令,用于检查文件名和路径的可移植性,遵循POSIX规范。它检测不可移植字符,确保文件在不同系统间的兼容性。选项如 `-p`, `-P` 和 `--portability` 提供不同级别的检查。基本用法是 `pathchk [选项] [文件名/路径名] [后缀]`。例如,`pathchk /etc/httpd/conf/httpd.conf` 检查路径的可移植性。使用时要注意目标系统的特性,谨慎处理警告,并结合其他命令如`find`使用。在操作前备份数据以防止损失。
|
2天前
|
Linux 数据处理 开发者
深入解析Linux中的paste命令:数据处理与分析的得力助手
`paste`命令在Linux中是数据处理的利器,它按列拼接多个文件内容,支持自定义分隔符和从标准输入读取。例如,合并`file1.txt`和`file2.txt`,使用`paste file1.txt file2.txt`,默认以制表符分隔;若要使用逗号分隔,可运行`paste -d ',' file1.txt file2.txt`。当文件行数不同时,较短文件后会填充空白行。结合管道符与其他命令使用,如`cat file1.txt | paste -s`,可按行合并内容。注意文件大小可能影响性能。
|
2天前
|
Java Linux
Java执行Linux命令
Java执行Linux命令
10 2
|
2天前
|
存储 Linux 数据安全/隐私保护
linux解压zip文件命令
linux解压zip文件命令
|
2天前
|
Linux
Linux中find命令总结
Linux中find命令总结
|
2天前
|
Linux 数据处理 数据库
深入探索Linux的package-cleanup命令
`package-cleanup`是Linux(尤其是RPM系统如CentOS)中的实用工具,用于清理和管理已安装的RPM包。它列出依赖问题、重复包,删除旧内核,并找出孤立软件包。关键参数包括`--problems`, `--dupes`, `--cleandupes`, `--leaves`, `--orphans`和`--oldkernels`。使用时注意备份,谨慎操作,并可结合`yum`定期维护系统。例如,`package-cleanup --oldkernels --count=2`用于删除除最新两个内核外的旧内核。