Linux运维之系统性能瓶颈工具vmstat分析

vmstat是一个很好用的检测系统性能工具,没有过多的参数,直接一个vmstat命令即可,不过我们一般加上-w表示宽格式输出。然后再附加上侦测时间即可

例如:

vmstat  -w  3  100

表示每3秒检测一次并输出系统信息,一共输出100次。

这样的格式的命令很好用,接下来我们运行一下这个命令并对输出的数据进行分析

[[email protected]:vg_adn_tidbCkhsTest:54.158.254.36:172.31.30.62 ~/tidb-bench/sysbench]#vmstat -w 3 100
procs -----------------------memory---------------------- ---swap-- -----io---- -system-- --------cpu--------
 r  b         swpd         free         buff        cache   si   so    bi    bo   in   cs  us  sy  id  wa  st
15  0            0     24466112         1476      2454284    0    0    95   101    2    2   3   0  97   0   0

参数讲解:

r:The number of runnable processes (running or waiting for run time).  表示当前运行队列中的线程的数目,代表线程处于可运行状态,但CPU还未能执行。这个值如果长期大于系统CPU的逻辑个数,说明CPU不足,需要增加CPU。b: The number of processes in uninterruptible sleep.  表示处在非中断睡眠状态的进程数。通俗的说就是表示在等待资源的进程数,比如正在等待I/O或者内存交换等。us: Time spent running non-kernel code.  表示用户进程消耗的CPU利用率的百分比。us的值比较高时,说明用户进程消耗的CPU时间多,但是如果长期大于50%,就需要考虑优化程序和算法sy: Time spent running kernel code.  表示内核进程消耗的CPU时间的百分比,sy的值越高时,说明内核消耗的CPU资源很多。注意:us+sy:参考值为80%,如果us+sy这个值大于80%说明可能存在CPU资源不足。id: Time spent idle.  Prior to Linux 2.5.41, this includes IO-wait time.  CPU空闲时间的百分比。如果这个值很小,表示CPU没有空闲时间,一直处于忙碌状态。wa: Time spent waiting for IO.  Prior to Linux 2.5.41, included in idle    所有可运行状态线程被阻塞在等待IO请求的百分比cs: The number of context switches per second  当前kernel system中,发生上下文切换的数目。系统中越多的上下文切换,在处理器的调度管理下,内核将得到更多的工作。in: The number of interrupts per second, including the clock。   当前中断被处理的数目
si: Amount of memory swapped in from disk (/s)  从磁盘交换到内存的交换页数量so: Amount of memory swapped to disk (/s)  从内存交换到磁盘的交换页数量bi和bo可以使用iostat -x命令来查看详细信息。

原文地址:https://www.cnblogs.com/FengGeBlog/p/10145814.html

时间: 2024-11-10 11:25:46

Linux运维之系统性能瓶颈工具vmstat分析的相关文章

13款Linux运维比较实用的工具

本文介绍几款Linux运维比较实用的工具,希望对Linux管理员有所帮助. 1.查看进程占用带宽情况-Nethogs Nethogs 是一个终端下的网络流量监控工具可以直观的显示每个进程占用的带宽. 下载:http://sourceforge.net/projects/nethogs/files/nethogs/0.8/nethogs-0.8.0.tar.gz/download [[email protected] ~]#yum  -y install libpcap-devel  ncurse

6 个 Linux 运维典型问题,大牛的分析解决思路在这里

作为一名合格的 Linux 运维工程师,一定要有一套清晰.明确的解决故障思路,当问题出现时,才能迅速定位.解决问题,这里给出一个处理问题的一般思路: 重视报错提示信息:每个错误的出现,都是给出错误提示信息,一般情况下这个提示基本定位了问题的所在,因此一定要重视这个报错信息,如果对这些错误信息视而不见,问题永远得不到解决. 查阅日志文件:有时候报错信息只是给出了问题的表面现象,要想更深入的了解问题,必须查看相应的日志文件,而日志文件又分为系统日志文件(/var/log)和应用的日志文件,结合这两个

【Linux 运维】 安装PHP工具Composer

一.安装PHP 由于Composer是 PHP 用来管理依赖(dependency)关系的工具.你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer 会帮你安装这些依赖的库文件. 选择安装PHP5.6: 1.安装前期准备 安装php前首先要明确apache即httpd以及mysql/MariaDB(数据库)是否已经安装好了,如果没有,需要先去安装apache和数据库.若都安装好了,那么就可以开始安装php了. 2.开始安装php 参考博客:https://blog.

linux学习14 Linux运维高级系统应用-glob通配及IO重定向

一.回顾 1.bash基础特性:命令补全,路径补全,命令引用 2.文件或目录的复制,移动及删除操作 3.变量:变量类型 存储格式,数据表示范围,参与运算 二.bash的基础特性 1.globbing:文件名通配(整体文件名匹配,而非部分) a.匹配模式:元字符 *:匹配任意长度的任意字符 pa*,*pa* ?:匹配任意单个字符,不管是什么必须得有一个 pa?: ??pa: p?a: p?a?: []:匹配指定范围内的任意单个字符 有几种特殊格式: [a-z],[A-Z],[0-9],[a-z0-

<zz>linux运维自动化shell脚本小工具

from http://www.cnblogs.com/wang-li/p/5728461.html linux运维shell 脚本小工具,如要分享此文章,请注明文章出处,以下脚本仅供参考,若放置在服务器上出错,后果请自负 1.检测cpu剩余百分比 #!/bin/bash #Inspect CPU #Sun Jul 31 17:25:41 CST 2016 PATH=/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/hom

linux运维自动化shell脚本小工具

linux运维shell 脚本小工具,如要分享此文章,请注明文章出处,以下脚本仅供参考,若放置在服务器上出错,后果请自负 1.检测cpu剩余百分比 #!/bin/bash #Inspect CPU #Sun Jul 31 17:25:41 CST 2016 PATH=/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/wl/bin export PATH TERM=linux export TERM CpuResu

最适合初学者的Linux运维学习教程2018版

Linux运维工程师是一个新颖岗位,现在非常吃香,目前从行业的角度分析,随着国内软件行业不断发展壮大,越来越多复杂系统应运而生,为了保证系统稳定运行,必须要有足够多的Linux运维工程师.维护是软件生命周期中非常重要一个阶段,当前国内的运维工程师人才相对稀缺,故在未来几年,运维工程师肯定会成为一个热门职业. Linux运维工程师发展前景从薪资待遇这方面来看,工作经验不到1年的人,在北上广大概是4k左右,基础相对好些的人,能达到5.5K左右.有相关工作经验的,一般在7K以上.Linux运维相关工作

Linux编程学习:Linux运维必会的系统工具

×××教育,独家开创"Linux云计算架构师课程".这是独家的全栈Linux运维课程,包含"公有云+私有云+自动化运维+Python运维开发"等核心开发技术,其中"私有云课程"较同行最全.而值得注意的是,私有云是运维行业中薪资最高的. 更何况,×××教育Linux运维课程内容,还是由中国第29位红帽认证架构师亲自编写的,更是由他和另一位业界大咖唐老师一同讲授.课程内容紧贴一线,实时动态更新,实力打造Linux运维行业佼佼者. 1.acct or

51CTO学习笔记--Linux运维故障排查思路与系统调优技巧视频课程(高俊峰)

51CTO学习笔记--Linux运维故障排查思路与系统调优技巧视频课程 第一课 Linux运维经验分享与思路 1.一般把主机名,写到hosts下    127.0.0.1    hostname,因为很多应用要解析到本地.oracle没有这个解析可能启动不了. 2.注释掉UUID以及MAC地址,需要绑定网卡的时候,这个可能会有影响. 3.磁盘满了无法启动,  var下木有空间,无法创创建PID等文件,导致文件无法启动,按e   进入single  然后b  重启进入单用户模式. 4.ssh登陆系