【Linux】内存查看vmstat命令(虚拟内存统计)

news2024/11/15 11:02:59
  • vmstat命令:虚拟内存统计

    • CPU使用率
    • 内存试用
    • 虚拟内存交换情况
    • IO读写情况
  • process

    • r:运行和等待CPU时间片的进程数

      • 超过cpu个数, 出现CPU瓶颈

      • 长时间大于1,CPU不足,需要增加CPU

    • b:正在等待资源的进程数,

      • 正在等待I/O

      • 内存交换

  • Memory

    • swpd:交换到内存交换区的内存数量 单位 k虚拟内存已使用的大小

      • 不为0,或者比较大,如超过100m,si、so的值长期0,系统性能还是正常的

        • 表示你的机器物理内存不足了

        • 如果不是程序内存泄露的原因

        • 该升级内存了或者把耗内存的任务迁移到其他机器。

    • free:当前空闲页面列表中内存数量 单位 k

    • buffer:块设备的读写

    • cache,page cache的缓存数量

      • 较大,说明用到cache的文件较多,如果此时IO中的bi比较低,说明文件系统效率比较好

  • swap

    • si:由内存进入内存交换区的数量

      • 如果这个值大于0,表示物理内存不够用或者内存泄露了

      • 要查找耗内存进程解决掉

    • so:由内存交换区进入内存的数量

      • 同上

  • IO

    • bi:从块设备读入数据的总量(读磁盘)单位kb/s,默认1024byte

    • bo:块设备写入数据的总量(写磁盘)单位kb/s

      • 读取文件,bo就要大于0

    • bi+bo = 1000,超过1000,wa值较大,考虑均衡磁盘负载

      • 结合iostat输出来分析

    • bi和bo一般都要接近0,不然就是IO过于频繁,需要调整

  • system 显示采集间隔内发生的中断数

    • in:某一时间间隔内每个设备中断数

    • cs:每秒产生的上下文切换数

      • 每次调用系统函数,我们的代码就会进入内核空间,导致上下文切换,这个是很耗资源,也要尽量避免频繁调用系统函数

      • 值越小越好,太大了要考虑调低线程或进程的数目

      • cs比磁盘i/o和网络信息包速率高得多,需要进一步排查

      • CS过大表示你的CPU大部分浪费在上下文切换,导致CPU干正经事的时间少了,CPU没有充分利用,是不可取的

  • cpu

    • us:用户方式下花费CPU时间占比

      • us值高,用户进程消耗的CPU时间多,如果长期大于50%,优化用户程序(算法或其他措施)

    • sy:内核进程花费的CPU时间占比

      • 如果太高,表示系统调用时间长,例如是IO操作频繁

      • us+sy=80%,如果大于80%,可能存在cpu不足

    • id:一般 us+sy+id=100

    • wa:IO等待所占用的CPU时间占比

      • 30%,如果超过30%,IO等待严重,

        • 可能磁盘大量随机访问造成

        • 磁盘或磁盘访问控制器的带宽瓶颈造成(块操作)

    • id:cpu处于空闲状态的时间占比

       

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/32662.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

玩转MySQL:定位排查解决突发Bug

引言 前面MySQL优化、调化两文中,聊到了关于数据库性能优化的话题,而本文则再来聊一聊关于MySQL线上排查方面的话题。线上排查、性能优化等内容是面试过程中的“常客”,而对于线上遇到的“疑难杂症”,需要通过理性的思维去分析问…

Java岗位必备技能SpringBoot的面试题集锦

当下SpringBoot框架真的很火,大多数企业把它作为基础技能,考察求职者的能力。如下截图,是我从Boss直聘中找到的,要求SpringBoot是必备技能。 所以非常有必要为了面试,好好归纳下SpringBoot常被提起来的问题。 题目大纲…

Tesseract .Net SDK C# OCR 2022.1

Tesseract .Net SDK C# OCR 库 #将扫描的 PDF 转换为可搜索的文档 #快速准确的基于神经网络的引擎 #纠正低质量扫描 # 120 多种语言 # .Net 2.0, .Net 5, 标准, 核心 Tesseract OCR - industry-fastest .Net OCR library 4 行代码,仅此而已 var api OcrApi.Creat…

[附源码]java毕业设计疫情环境下的酒店管理系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

不知道什么的复习题

P4408 [NOI2003] 逃学的小孩,一眼就看出要化简题面:不就是找三个点使得ABBC最大嘛,不妨想起直径的性质,最长,而且其他点到它的距离最长。那么直接拿直径来做就行。推导出结论为ansmax(min(dis[A][k],dis[B][k])dis[A][…

CSS3------CSS选择器

界面中的“超文本“本质上就是通过一个一个矩形盒子包起来,然后进行排版组合,那么接下来要详细研究这个标签盒子的细节结构,以帮助学习如何使用它,但是在开始研究它之前,我们先来了解一个概念,选择器的概念…

BN、CBN、CmBN 的对比与总结

BN、CBN、CmBN 的对比与总结 最近看到了关于 Yolo 系列 trick 的总结文章 【Make YOLO Great Again】YOLOv1-v7全系列大解析(Tricks篇),其中提到了 YoloV4 中使用了 CmBN,这是对 CBN 的改进,可以较好的适应小 batch 的…

电容笔值不值得买?电容笔十大品牌排行

要想给我们的ipad配置一款电容笔,如果感觉苹果原装的电容笔价格远远超过预算。这时候平替电容笔是个非常值得入手的选择。试想一下购买一款苹果原装的电容笔的资金都够买整整四款平替电容笔了,平替电容笔价格便宜且功能跟苹果的电容笔相差无几。下面我来…

【设计模式】 - 结构型模式 - 迭代器模式

目录标题前言迭代器模式概述结构实现优缺点JDK源码解析前言 行为型模式用于描述程序在运行时复杂的流程控制,即描述多个类或对象之间怎样相互协作共同完成单个对象都无法单独完成的任务,它涉及算法与对象间职责的分配。 行为型模式分为类行为模式和对象…

ai绘画有哪些软件,盘点三款免费且超级好用的AI绘画工具

Ai绘画有哪些软件?不但可以免费使用,而且生成的画作精美,而且生成的图片速度还要很快? 不用急,今天小编给大家推荐的这三款ai绘画工具完全满足了上述条件! 第一款,重磅级产品,数画…

内存 地址转换、分段、空闲空间管理

目录 1. 地址转换 1.1 动态重定位 1.1.1 基址寄存器(虚拟地址 -> 物理地址) 1.1.2 界限寄存器(提供访问保护) 1.2 操作系统的工作 2. 分段 2.1 分段:泛化的基址/界限 2.2 引用哪个段 2.3 代码和堆的地址转换举例 2.4…

Java#23(常见API--1)

目录 一.Math Math是一个帮助我们用于进行数学计算的工具类 工具类的特点: Math类中的常用方法 二.System System是一个工具类,为我们提供一些与系统相关的办法 一.Math Math是一个帮助我们用于进行数学计算的工具类 工具类的特点: 私有化构造方法,所有的方法都是静态的 M…

[附源码]java毕业设计医院预约挂号管理系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

web网页设计期末课程大作业 我的美丽家乡盐城 HTML+CSS+JavaScript

家乡旅游景点网页作业制作 网页代码运用了DIV盒子的使用方法,如盒子的嵌套、浮动、margin、border、background等属性的使用,外部大盒子设定居中,内部左中右布局,下方横向浮动排列,大学学习的前端知识点和布局方式都有…

Linux C应用编程-2-Makefile编写

1.基本规则 #规则格式 target ... : prerequisites ... command1command2#例如 main: main.o stack.o maze.ogcc main.o stack.o maze.o -o main main是规则的目标(Target),main.o、stack.o和maze.o是规则的条件(Prerequisite&am…

贴地气的安卓UI自动化工具4399AT全面更新了~

4399AT是 一款兼容多设备运行并实现全自动化的测试的安卓UI工具,全自动化测试是指从apk的安装到按钮点击,密码输入到安装完成,不需要人工介入,兼容android5.0-12.0系统大部分品牌,至于开始测试,启动apk后&a…

(十)笔记.net学习Lambda和Linq表达式

1.lambda表达式的演变 Lambda表达式的本质是“匿名方法”: C#的Lambda 表达式都使用 Lambda 运算符 >,该运算符读为“goes to”。语法如下: (object argOne, object argTwo) > {; /*Your statement goes here*/} 函数体多于一条语句…

一次Actuator未授权访问利用

目录 介绍 复现 Actuator目录下可能利用泄漏信息的路径 利用 思考 处理意见 介绍 事先得到同意对朋友公司的网站进行了扫描,扫出了一个Actuator未授权,于是开始复现并记录一下,最后获取了redis的密码 复现 这里是请求包 响应包成功返回…

qt 虚拟键盘中的几个瑕疵

最近使用了下面楼主的虚拟键盘,总体还是挺好用的,只是有几个地方,需要完善下。 基于Qt的可用于嵌入式的虚拟键盘_偷段代码的博客-CSDN博客_qt 嵌入式虚拟键盘这几天完成了一个基于Qt的虚拟键盘的编写,记录一下过程与感受&#xf…

Python操作Numpy模块库

14天学习训练营导师课程: 杨鑫《Python 自学编程基础》 杨鑫《 Python 网络爬虫基础》 杨鑫《 Scrapy 爬虫框架实战和项目管理》 Python操作Numpy模块库 文章目录Python操作Numpy模块库1.Numpy介绍2.Numpy安装3.Numpy模块练习3.1 创建数组3.2 获取数组3.3 切割数组…