通过vmstat分析性能

 如上图所示,我们在命令vmstat后面添加了两个参数,1表示间隔一秒获取一次,10表示总共获取10次

我们一列一列数据来看:

  • r:代表目前实际运行的指令队列,很高表示CPU很繁忙通常会CPU使用率过高

    • 这个数据如果高于服务器CPU核数就可能出现瓶颈(需要结合后五列CPU使用百分比)
    • 超过CPU核数的3个就比较高,超过5个已经很高,超过10个就比较危险了
  • b:目前因为等待资源而阻塞运行指令,比如等待I/O,内存交换、CPU资源瓶颈
  • swpd:表示虚拟内存(swap)已使用的大小。当服务器物理内存不够用时候,会把物理内存的部分空间释放出来,以供急需物理内存的来运行的程序使用,而从物理内存释放出来的一般是很长时间没有实际运行的程序。被保存到虚拟内存的内容等到运行起来,会从虚拟内存中恢复到物理内存。swpd大于0,不代表物理内存不够用了,需要结合si和so,如果si和so为0,表示物理内存是够用的
  • free:空闲的物理内存
  • buff:系统缓冲区的内存大小,只有对块设备读写才会需要缓冲区
  • cache:给已经打开的文件作为缓存的内存大小
  • si:每秒从虚拟内存读到内存中的数据大小,如果这个值长期大于0,表示物理内存不够用了
  • so:每秒写入虚拟内存的数据内容大小
  • bi和bo:表示每秒块设备读写,bi和bo两个值越大,CPU在I/O等待的值越大
  • in:CPU中断次数
  • cs:CPU每秒上下文切换次数,这值要越小越好,太大了要考虑调低线程和进程数量。上下文切换次数过多会让CPU大部分时间都浪费在上下文切换上,CPU正经运行就少了,CPU没有充分被利用。
  • us:用户模式CPU使用时间百分比,越高越好,说明CPU被充分利用了
  • sy:系统内核执行时间百分比,太高说明系统内核消耗CPU资源多
  • id:表示空闲空闲CPU占比,一般id + us + sy =100
  • wa:表示I/O等待时间百分比,越高说明I/O等待情况严重
  • st:改值一般都是0,一般在虚拟机中才会有

通过mpstat分析性能

如上图所示,我们在命令mpstat后面添加了两个参数,1表示间隔一秒获取一次,10表示总共获取10次

  • %usr:用户模式下CPU使用时间的百分比,和vmstat中us数据基本一致
  • %nice:CPU进程优先级调度占用的时间,这个值一般都是0,只有修改过默认优先级才会显示
  • %sys:表示系统内核进程执行时间百分比(system time)。该值越高,说明系统内核消耗的CPU资源越多,和vmstat命令中的sy数据基本一致。
  • %iowait:表示I/O等待时间的百分比。该值越高,说明IO等待越严重,和vmstat命令中的wa数据基本一致。
  • %irq:表示用于处理系统中断的CPU百分比。和vmstat命令中的in数据的含义类似。in越高,%irq也会越高。
  • %soft:表示用于软件中断的CPU百分比
  • %steal:表示CPU等待虚拟机调度的时间占比。这个指标一般在虚拟机中才会有,物理机中该值一般维持为0,和vmstat命令中的st数据基本一致。
  • %idle:表示空闲CPU时间的占比。和vmstat命令中的id数据基本一致

通过pidstat分析性能

  • UID:用户id
  • PID:进程id
  • %usr:进程对用户模式CPU使用的时间
  • %system:进程对系统模式CPU使用的时间
  • CPU:执行指定进程的CPU编号
  • Command:当前进程运行命令

通过free看内存

  • total:显示系统总的物理内存和交换区大小单位是k
  • used:显示已经被使用的物理内存和交换区大小单位是k
  • free:显示还有多少未使用的物理内存和交换区单位是k
  • shared:显示共享区占用的物理内存大小单位是k
  • buff/cache:缓冲区和缓存合计使用的内存大小单位是k
  • available列:显示的是可用物理内存的大小,单位为k。通常情况下,available的值等于free+buff/cache。

通过top系统情况

  • 第一行显示的是系统运行信息:系统时间20:04:16秒、系统运行了12天、当前登陆用户2个、系统平均负载:4.75(1分钟平均负载压力),2.83(5分钟平均负载压力),2.02(15分钟平均负载压力)(这个数值除以CPU核数得到的值大于3-5时,系统负载就超高了)
  • 第二行显示任务信息:总进程352,1个运行状态,298个休眠中,0个停止,0个假死
  • 第3行显示的是CPU的运行信息: 11.1us表示用户模式下CPU占用比为11.1%,5.0 sy表示系统模式下CPU占用比为5.0%,0.1 ni表示改变过优先级的进程的CPU占用比为0.1%,83.2 id表示空闲状态的CPU占用比为83.2%,0.3 wa表示因为I/O等待造成的CPU占用比为0.3%,0.0 hi表示硬中断的CPU占用比,0.3 si表示软中断的CPU的占用比。0.0 st表示CPU等待虚拟机调度的时间占比,这个指标一般在虚拟机中才会有,在物理机中该值一般维持为0。
  • 第4行显示的是内存的使用信息:total表示物理内存的总量,free表示物理内存的空闲大小,198808 used表示已使用的物理内存的大小,buff/cache表示用于缓存的物理内存的大小。
  • 第5行显示的是虚拟内存(swap)的使用信息: total表示虚拟内存空间的大小, free表示空闲的虚拟内存空间的大小, used表示已使用的虚拟内存空间的大小, avail Mem表示可供使用的内存大小。
  • 第7行显示的是每个进程的资源消耗信息
    • %CPU:进程运行时CPU占用比
    • %MEM:进程使用的内存占用比
    • TIME+:进程占用CPU总时长
    • COMMAND:正在运行的命令

友情链接

https://www.cnblogs.com/yetangjian/p/15705398.html

Linux服务器的性能监控与分析的更多相关文章

  1. Linux服务器常用性能监控命令汇总

    1.ifconfig 网卡数目.ip地址.Mac地址.MTU大小 eth0 Link encap:Ethernet HWaddr 00:0d:3a:50:12:e9 inet addr:10.0.0. ...

  2. 1.linux服务器的性能分析与优化

    [教程主题]:1.linux服务器的性能分析与优化 [课程录制]: 创E [主要内容] [1]影响Linux服务器性能的因素 操作系统级 CPU 目前大部分CPU在同一时间只能运行一个线程,超线程的处 ...

  3. 高性能Linux服务器 第10章 基于Linux服务器的性能分析与优化

    高性能Linux服务器 第10章    基于Linux服务器的性能分析与优化 作为一名Linux系统管理员,最主要的工作是优化系统配置,使应用在系统上以最优的状态运行.但硬件问题.软件问题.网络环境等 ...

  4. linux服务器的性能分析与优化(十三)

    [教程主题]:1.linux服务器的性能分析与优化 [主要内容] [1]影响Linux服务器性能的因素 操作系统级 Ø CPU 目前大部分CPU在同一时间只能运行一个线程,超线程的处理器可以在同一时间 ...

  5. Linux性能监控与分析之--- CPU

    Linux性能监控与分析之--- CPU 望月成三人关注 2016.07.25 18:16:12字数 1,576阅读 2,837 CPU性能指标 用户进程使用CPU的比率 系统进程使用CPU的比率 W ...

  6. 【转载】Linux系统与性能监控

    原文地址:http://kerrigan.sinaapp.com/post-7.html Linux System and Performance Monitoring http://www.hous ...

  7. Linux系统与性能监控

    原文地址:http://kerrigan.sinaapp.com/post-7.html Linux System and Performance Monitoring http://www.hous ...

  8. web性能监控与分析

    注:原文为:andyguo: <web性能监控与分析> 性能测试需要使用不同的工具,结合系统日志,监控服务器.应用等方面的多项指标.以下阐述监控指标.监控工具.瓶颈分析. 服务端监控指标 ...

  9. Linux系统和性能监控之CPU篇

    Linux系统和性能监控之CPU篇 性能优化就是找到系统处理中的瓶颈以及去除这些的过程.本文由sanotes.net站长tonnyom在2009年8月翻译自Linux System and Perfo ...

  10. Linux下Java性能监控

    Linux下Java性能监控 一.JVM堆内存使用监控 获取thread dump的3种方法: 1)使用$JAVA_HOME/bin/jcosole中的MBean,到MBean>com.sun. ...

随机推荐

  1. 2021-05-31:怎么判断n个数俩俩互质?比如7,8,9任意两个数最大公约数是1,所以7,8,9两两互质。比如8,9

    2021-05-31:怎么判断n个数俩俩互质?比如7,8,9任意两个数最大公约数是1,所以7,8,9两两互质.比如8,9,10不是两两互质,因为8和10的最大公约数是2. 福大大 答案2021-05- ...

  2. 2022-01-26:最优账单平衡。 一群朋友在度假期间会相互借钱。比如说,小爱同学支付了小新同学的午餐共计 10 美元。如果小明同学支付了小爱同学的出租车钱共计 5 美元。我们可以用一个三元组 (x

    2022-01-26:最优账单平衡. 一群朋友在度假期间会相互借钱.比如说,小爱同学支付了小新同学的午餐共计 10 美元.如果小明同学支付了小爱同学的出租车钱共计 5 美元.我们可以用一个三元组 (x ...

  3. MMCM/PLL VCO

    输入输出时钟频率,input 322.265625Mhz, output 312.5Mhz 对于使用MMCM与PLL的不同情况,虽然输入输出频率是一样的,但是,分/倍频系数是不同的,不能使用同一套参数 ...

  4. Hugging News #0519: 我们把 HuggingChat 开源了

    每一周,我们的同事都会向社区的成员们发布一些关于 Hugging Face 相关的更新,包括我们的产品和平台更新.社区活动.学习资源和内容更新.开源库和模型更新等,我们将其称之为「Hugging Ne ...

  5. 最流行的AI绘图工具Midjourney,你不得不知道的使用技巧

    ​关注文章下方公众号,可免费获取AIGC最新学习资料 本文字数:1500,阅读时长大约:10分钟 Midjourney成为了最受欢迎的生成式AI工具之一.它的使用很简单.输入一些文本,Midjourn ...

  6. 癌症中克隆种群结构统计推断分析软件PyClone安装小记

    由于微信不允许外部链接,你需要点击文章尾部左下角的 "阅读原文",才能访问文中链接. PyClone 是一种用于推断癌症中克隆种群结构的统计模型. 它是一种贝叶斯聚类方法,用于将深 ...

  7. Python 自动化测试的配置层实现方式对标与落地

    Python中什么是配置文件,配置文件如何使用,有哪些支持的配置文件等内容,话不多说,让我们一起看看吧~ 1 什么是配置文件? 配置文件是用于配置计算机程序的参数和初始化设置的文件,如果没有这些配置程 ...

  8. Java发展历程及各版本新特性

    Java的历史是非常有意思的.1990年底,Sun Microsystems在工作站计算机市场上领先世界,并继续保持健康发展.Sun想把本公司的创新和专业知识应用到即将到来的消费电子市场领域,于是该公 ...

  9. 2023-06-19:讲一讲Redis分布式锁的实现?

    2023-06-19:讲一讲Redis分布式锁的实现? 答案2023-06-19: Redis分布式锁最简单的实现 要实现分布式锁,确实需要使用具备互斥性的Redis操作.其中一种常用的方式是使用SE ...

  10. Spring Cloud灰度部署

    1.背景(灰度部署) 在我们系统发布生产环境时,有时为了确保新的服务逻辑没有问题,会让一小部分特定的用户来使用新的版本(比如客户端的内测版本),而其余的用户使用旧的版本,那么这个在Spring Clo ...