一提到对于查看系统运行的健康状况,可能大多数朋友考虑到的就是查看进程或者打开任务管理器,但是对于应用在真实生产环境中服务器的linux系统来说,以上两种方式都不是***效的查看方式,那么今天就给大家推荐一个在linux系统中非常实用的关心系统运行健康的方式———— ‘ vmstat ’ 命令。

vmstat命令是非常实用的一种Linux/Unix监控工具,可以直观的浏览到给定的时间间隔的系统运行状态,包括服务器的CPU使用率,内存使用情况,虚拟内存交换情况, 硬盘、内存读写情况。相比top,可以让管理人员看到整个机器的CPU,内存,IO的使用情况,而不仅仅是看到单个进程的CPU使用率和内存使用率。当然也并不是说只用vmstat不用top,实际上两者是应用于不同生产环境当中。

vmstat工具的使用是通过两个数字参数来完成的,***个参数是给定的时间间隔数,单位是秒,第二个参数是查看的次数。

例如:

1: 给定的时间间隔, 1秒

3: 查看的次数

当然如果不加查看次数的话,会一直监控下去,如果不想监控那就直接停掉vmstat,这也是真实生产环境中常用的操作。

如图中所示,我一直运行vmstat,间隔一秒查看八次,然后停止。

接下来呢就来解释这个命令所显示的所有的参数的含义。

r:运行队列(就是多少个进程真的被分配到CPU),当这个值超过了CPU个数的时候就会出现CPU瓶颈。

B:表示阻塞的进程。

Swpd:虚拟内存已使用的大小,如果大于0就表示设备物理内存不足。

Free : 空闲的物理内存的大小。

Buff :系统中目录内容、权限等级的缓存

Cache : cache直接用来做文件缓冲(linux系统把空闲的物理内存的一部分拿来做文件和目录的缓存,是为了提高程序执行的性能,当程序使用内存时, buffer/cached会很快地被使用。)

Si : 每秒从磁盘读取虚拟内存的大小,如果这个值大于0,表示物理内存不够用或者内存泄露,需要查找到耗内存较大的进程解决掉。

So : 每秒虚拟内存写入磁盘的大小,如果这个值大于0,同样也表示内存不够使用。

Bi : 块设备每秒接收的块数量,这里的块设备是指系统上所有的磁盘和其他块设备,默认块大小是1024

Bo : 块设备每秒发送的块数量,bi和bo的值一般都要接近0,不然就是输入输出过于频繁,需要做出调整。

In : 每秒CPU的中断次数,包括时间中断。

Cs :每秒上下文切换次数,例如使用者调用系统函数,就要进行上下文切换。线程的切换,也要进程上下文切换,这个值要越小越好,太大就要考虑调低线程或者进程的数目。

Us :用户CPU时间,运行状态下用户空间的时间。

Sy :系统CPU时间,运行状态下系统空间的时间,如果太高,表示系统调用时间长。

注: us+sy=进程时间(cpu时间)

Id : 空闲 CPU时间,一般来说,id + us + sy = 100

Wt : 等待IO(输入输出) CPU时间。

linux查询健康状态,如何直观的判断你的Linux系统是否健康的更多相关文章

  1. Elasticsearch 集群和索引健康状态及常见错误说明

    之前在IDC机房线上环境部署了一套ELK日志集中分析系统, 这里简单总结下ELK中Elasticsearch健康状态相关问题, Elasticsearch的索引状态和集群状态传达着不同的意思. 一.  ...

  2. nginx自动检测后台服务器健康状态

    转自http://www.iyunv.com/thread-38535-1-1.html 公司业务线上对后端节点的健康检查是通过nginx_upstream_check_module模块做的,这里我将 ...

  3. MySQL执行SHOW STATUS查询服务器状态状态之Handler_read_* 详解

    在MySQL里,我们一般使用SHOW STATUS查询服务器状态,语法一般来说如下: SHOW [GLOBAL | SESSION] STATUS [LIKE ‘pattern’ | WHERE ex ...

  4. Varnish后端主机的健康状态检查

    author:JevonWei 版权声明:原创作品 配置后端主机的Health Check 环境 Varnish 192.168.198.139 图片服务端 192.168.198.120 程序服务端 ...

  5. nginx_upstream_check_module-master对nginx的后端机器进行健康状态检查报403错误【转】

    在nginx.conf配置文件中 在server添加 location /nstatus { check_status; access_log off; #allow 192.168.2.11; #d ...

  6. 如何编写LVS对Real Server的健康状态检测脚本

    简介:Linux 虚拟服务器(Linux Virtual Server. LVS),是一个由章文松开发的自由软件.利用KVS可以实现高可用的.可伸缩缩的Web, Mail, Cache和Medial等 ...

  7. WEB缓存系统之varnish代理以及健康状态检测配置

    前文我们聊了下varnish的缓存项修剪配置,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/12666406.html:今天我来说一下varnish作为代理服务 ...

  8. linux查询操作系统信息,CPU物理个数,CPU核心数,逻辑CPU数,内存信息查询,硬盘信息查询

    目录 一.前言 二.关于服务器基本配置 2.1 操作系统基本配置查询 2.2 CPU基本配置查询 2.3 内存基本配置查询 2.4 硬盘基本配置查询 一.前言 ​ 当我们接手了一台或者几台服务器的时候 ...

  9. pod管理调度约束、与健康状态检查

    pod的管理 [root@k8s-master ~]# vim pod.yaml apiVersion: v1 kind: Pod metadata: name: nginx-pod labels: ...

随机推荐

  1. 一.Promise入门准备阶段

    一.Promise入门准备阶段 1.区别实例对象呵函数对象 2.两种类型的回调函数(同步与异步) 2.1 同步回调 2.2 异步回调 3.JS的error处理 3.1 错误的类型 3.2 错误处理与错 ...

  2. shiro550反序列化分析

    拖了很久的shiro分析 漏洞概述 Apache Shiro <= 1.2.4 版本中,加密的用户信息序列化后存储在Cookie的rememberMe字段中,攻击者可以使用Shiro的AES加密 ...

  3. Mysql - 如何存储 10位、13位的 unix 时间戳?

    背景 前面有讲过存日期时间可以用  datetime.timestamp 类型:https://www.cnblogs.com/poloyy/p/15546735.html 格式是: YYYY-MM- ...

  4. 站长管理服务器必读:Ftp、Ftps与Sftp三兄弟的不同与区别以及部署全指引

    文章标题: 站长管理服务器必读:Ftp.Ftps与Sftp三兄弟的不同与区别以及部署全指引 关键字 : ftp,sftp,freesshd,ftps 文章分类: 教程 创建时间: 2020年3月23日 ...

  5. 如何实现异步 connect

    写过网络程序的同学,应该都知道 connect 函数,在 socket 开始读写操作之前,先要进行连接,也即 TCP 的三次握手 , 这个过程就是在 connect 函数中完成的, connect 函 ...

  6. 【死磕 NIO】— 深入分析Buffer

    大家好,我是大明哥,今天我们来看看 Buffer. 上面几篇文章详细介绍了 IO 相关的一些基本概念,如阻塞.非阻塞.同步.异步的区别,Reactor 模式.Proactor 模式.以下是这几篇文章的 ...

  7. FastJson测试用例

    基础测试 package com.ai; import com.ai.test.daily.Student; import com.alibaba.fastjson.JSON; import com. ...

  8. go语言并发编程

    引言 说到go语言最厉害的是什么就不得不提到并发,并发是什么?,与并发相关的并行又是什么? 并发:同一时间段内执行多个任务 并行:同一时刻执行多个任务 进程.线程与协程 进程: 进程是具有一定独立功能 ...

  9. radio两行每行只能选择一个的解决方案!

    如图,我要做到这个效果,竖着每行只能有一个最像,和最不像,点击左边禁用右边 <div v-else> <div v-if="progress<quiz.length& ...

  10. 使用idea创建Kotlin项目

    1.打开idea 2.选择项目方式: 3.nest 4.创建文件名 4.finish 看这目录结构和java没什么区别 5.在src目录下新建一个Kotlin文件 fun main(args:} fu ...