Linux 使用 vmstat 查看虚拟内存状态
Linux vmstat 诊断工具 About 2,958 words介绍
vmstat
(Virtual Memory Statistics
虚拟内存统计) 命令用来显示Linux
系统虚拟内存状态。
常用命令
vmstat
打印当前vm
信息
[root@root ~]$ vmstat
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
2 0 704784 2889756 366676 8683336 0 0 0 4 0 0 1 1 98 0 0
vmstat 2 20
每隔两秒打印一次,共打印20
次
[root@root ~]$ vmstat 2 10
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
3 0 704784 2859332 366840 8712436 0 0 0 4 0 0 1 1 98 0 0
3 0 704784 2857896 366840 8713560 0 0 0 0 10898 16823 15 2 83 0 0
11 0 704784 2857856 366844 8713564 0 0 0 6 2909 2659 12 1 88 0 0
3 0 704784 2855784 366844 8714872 0 0 0 1176 14089 24199 34 4 62 0 0
5 0 704784 2856032 366844 8715212 0 0 0 0 8492 12366 15 2 83 0 0
2 0 704784 2854672 366848 8716184 0 0 0 6 9962 12163 13 2 85 0 0
1 0 704784 2854244 366852 8716188 0 0 0 754 6612 8334 13 2 86 0 0
3 0 704784 2854232 366852 8717012 0 0 0 0 19148 33322 40 4 55 0 0
2 0 704784 2853380 366856 8718296 0 0 0 1070 3888 4656 9 1 90 0 0
1 0 704784 2852692 366856 8719324 0 0 0 0 5191 6966 10 1 90 0 0
参数
- procs 进程
- r:运行队列中进程数量。进程数越多,意味着CPU非常繁忙。如果该参数长期大于和等于逻辑cpu个数,则CPU资源可能存在较大的瓶颈。
- b:被阻塞进程数量。主要是指被资源阻塞的进程对列数(比如IO资源、页面调度等),当这个值较大时,需要根据应用程序来进行分析,比如数据库产品,中间件应用等。
- memory 内存
- swpd:使用虚拟内存大小,如果swpd的值不为0,但是SI,SO的值长期为0,这种情况不会影响系统性能。
- free:空闲物理内存大小。
- buff:用作缓冲的内存大小。
- cache:用作缓存的内存大小,如果cache的值大的时候,说明cache处的文件数多,如果频繁访问到的文件都能被cache处,那么磁盘的读IO bi会非常小。
- swap 交换区
- si:每秒从交换区写到内存的大小,由磁盘调入内存。
- so:每秒写入交换区的内存大小,由内存调入磁盘。
- 注意:内存够用的时候,这2个值都是0,如果这2个值长期大于0时,系统性能会受到影响,磁盘IO和CPU资源都会被消耗。不能光看空闲内存(free)很少或接近于0时,就认为内存不够用了,还要结合si和so,如果free很少,但是si和so也很少(大多时候是0),那么不用担心,系统性能这时不会受到影响的。因为Linux总是先把内存用光。
- io 读写
- bi:每秒读取的块数。
- bo:每秒写入的块数。
- system 系统
- in:每秒中断数,包括时钟中断。
- cs:每秒上下文切换数。
- cpu
- us:用户进程执行时间百分比(user time) us的值比较高时,说明用户进程消耗的CPU时间多,但是如果长期超50%的使用,那么就该考虑优化程序算法或者进行加速。
- sy:内核系统进程执行时间百分比(system time) sy的值高时,说明系统内核消耗的CPU资源多,这并不是良性表现,应该检查原因。
- wa:IO等待时间百分比
wa
的值高时,说明IO等待比较严重,这可能由于磁盘大量作随机访问造成,也有可能磁盘出现瓶颈(块操作)。 - id:空闲时间百分比。
帮助文档
usage: vmstat [-V] [-n] [delay [count]]
-V prints version.
-n causes the headers not to be reprinted regularly.
-a print inactive/active page stats.
-d prints disk statistics
-D prints disk table
-p prints disk partition statistics
-s prints vm table
-m prints slabinfo
-t add timestamp to output
-S unit size
delay is the delay between updates in seconds.
unit size k:1000 K:1024 m:1000000 M:1048576 (default is K)
count is the number of updates.
Views: 6,872 · Posted: 2019-09-03
————        END        ————
Give me a Star, Thanks:)
https://github.com/fendoudebb/LiteNote扫描下方二维码关注公众号和小程序↓↓↓
Loading...