Linux 性能分析命令详解

news2024/11/15 15:57:20

top 命令

  • top -1 按数字1可以看到 多个核,每个核的cpu的使用情况

    监控工具\平台来收集cpu的使用率 是所有cpu数量的一个总体的使用率

     


    • top -E 按大写字母E可以看到不同单位的内存使用情况 KB MB GB TB

     

    mem: buffer cache swap

    • buffer是磁盘虚拟出来的一个缓冲区,用于内存**读取**磁盘数据时,加快读取速度
    • cache 缓存,存在内存、cpu中
    • swap 交互分区 主要是用来,交换内存空间。它也是由磁盘虚拟而来,一般为内存的2倍

    任何一个程序启动,都会在内存中占用:虚拟内存和 物理内存


    top -f 展示对应指标的含义

     

     


  • 查看当前系统cpu使用率最高的4个进程: n 4 回车

     

    按下n

 输入3

可以查看当前系统cpu使用率最高的3个进程


改变默认刷新时间

top命令默认3秒钟刷新一次数据: s 输入阿拉伯数字 

 


查看某个进程下的线程资源使用情况: top -H -p pid值

 


性能基础分析命令 ps 

  • ps -ef -eF -ely使用标准语法查看系统上的每个进程
  • ps aux\ax使用BSD语法查看系统上的每个进程
  • ps -eiH\axms显示进程树
  • ps -eLf \ axms 显示线程信息

ps aux |grep mysqld |grep -v grep


vmstat  命令

通过 yum install sysstat -y 安装

主要用途 : 虚拟内存统计的缩写 ,可以对虚拟内存,进程,cpu 活动进行监控

-a:显示活跃和非活跃内存
-f:显示从系统启动至今的fork数量
-m:显示slabinfo
-n:只在开始时显示一次各字段名称。
-s:显示内存相关统计信息及多种系统活动数量。
delay:刷新时间间隔。如果不指定,只显示一条结果。
count:刷新次数。如果不指定刷新次数,但指定了刷新时间间隔,这时刷新次数为无穷。
-d:显示磁盘相关统计信息。
-p:显示指定磁盘分区统计信息
-S:使用指定单位显示。参数有 k 、K 、m 、M ,分别代表1000、1024、1000000、1048576字节(byte)。默认单位为K(1024 bytes)
-V:显示vmstat版本信息。

vmstat 1 1  表示每隔一秒采集一次服务器状态,表示只采集一次

 procs

 r : 数字 显示cpu中有多少个进程正在等待

 如果r列是数字,大于cpu核数,那么说明现在现在有大量的进程在等待cpu进行计算,现在可能出现了cpu不够用的情况。----cpu成了我们的性能瓶颈,此时,可能需要去增加cpu数量;或者减少运行的进程数

 b : 数字 现在有多少进程正在不可中断的休眠. 如果这个数字过大,就说明,资源不够用


vmstat 3  表示每3s显示一次数据

 

procs

  • r 显示多少进程在等待,
  • b 显示多少进程在不可中断的休眠

memory

  • swod显示多少块被换出磁盘
  • free显示剩下的空闲块
  • buff正在被用作缓冲区的块
  • cache正在被用作操作系统的缓存

swap

SI 交换分区中的换入

SO 交换分区中的换出

io

显示了多少块(BYTE)设备  读取 (bi)写(bo) 通常反映了硬I/0

system

显示每秒中断(in)和上下文切换(CS)的数量

CPU

显示所有的CPU时间花费在各类操作的百分比,包括执行用户代码(非内核),执行系统代码(内核),空闲和等待IO 

us  sy id wa st

内存不足的表现:

 

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r  b           swpd    free  buff cache      si     so      bi bo         in        cs us sy id wa st
1  0           0   247556 2108 336784     0     0        58 4           2        56 0 0 99 0 0
  • memory free 急剧减少, 回收buffer 和cache 也没用,
  • 大量使用 swap 页面交换和 swpd交换分区 频繁
  • 磁盘 io 增多
  • sytem 缺页终端 IN 增多
  • 上下文交换CS  次数增多
  • 等待IO的线程数 b 增多
  • 大量cpu 时间用于等待IO  wa 

mpstat

sysstat的工具包,这个工具包中带了很多性能分析命令`yum install sysstat -y` mpstat  是其中的一个

  • mpstat 1 10  每秒显示一次监控数据,总共显示10次

  • mpstat -P ALL 3       3  秒获取一次所有的监控数据

具体含义:

  • %usr
  • %nice
  • %sys
  • %iowait
  • %irq 硬中断
  • %soft 软中断
  • %steal
  • %guest 显示cpu或cpu运行虚拟机处理器所花费的时间占比
  • %gnice 显示cpu或cpu运行nices客户机所花费的时间占比
  • %idle

pidstat

看磁盘、内存、cpu的数据,主要看cpu的上下文数据

 

  • -u 用于查看cpu的数据
  • -w 看cpu的上下文数据
  • UID PID
  •  cswch/s  自愿上下文切换次数 
  •  nvcswch/s 非自愿上下文切换次数
  •  Command

中断 与 上下文切换 的区别 :

  • 中断: 中断当前正在运行的,去做其他事情
  • 上下文切换: 资源的切换
  • 中断时,一定会导致上下文切换,但是上下文切换,不一定会中断。


netstat 系统自带

用于显示与IP TCP UDP CMP协议相关的数据统计般用于检验本机各端口的网络连接情况

  • -a显示所有连线中的socket
  • -n 直接使用ip地址,用数字方式显示,而不通过域名服务器
  • -p显示正在使用socket的程序识别码和程序名称
  • -e显示网络相关信息  文件所在位置
  • -t tcp传输协议的连线状况

 

iostat

显示设备 分区和网络文件系统的CPU统计信息和输入/输出统计信息

  • -c显示CPU使用率报告 cpu
  • -d显示设备使用率报告 disk
  • -k以每秒千字节显示统计报告
  • -m以每秒兆字节显示统计报告
  • -X显示扩展统计信息 

显示设备使用率 每1s刷新一次 刷新3次 cpu

显示设备使用率 每1s刷新一次 刷新3次 磁盘

 

具体指标含义:

  •  rrqm/s 合并的每秒读请求
  •  wrqm/s 合并的每秒写请求
  •  r/s 读/秒
  •  w/s 写/s
  •  rkB/s 读kb/s
  •  wkB/s
  •  avgrq-sz 平均情况的扇区数
  •  avgqu-sz 等待大的请求数
  •  await 等待的时间
  •  r_await 读等待的时间
  •  w_await 写等待的时间
  •  svctm 实际请求的时间
  •  %util 至少有一个活跃请求的所占的时间百分比

dstat

yum install dstat -y

用于替换vmstat 和iotstat的命令工具,功能强大

  • -c 显示cpu系统占用情况
  • -i 显示中断情况
  • -m 显示内存使用情况
  • -p 显示进程状态
  • -d 显示磁盘读写情况
  • -l  显示系统负载
  • -n 显示网络情况 
  • -r 显示io运行情况

常用 lcmdry

 

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

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

相关文章

99-104-Hadoop-MapReduce-排序:

99-Hadoop-MapReduce-排序: WritableComparable 排序 排序是MapReduce框架中最重要的操作之一。 MapTask和ReduceTask均会对数据按 照key进行排序。该操作属于 Hadoop的默认行为。任何应用程序中的数据均会被排序,而不管逻辑上是否需要。 默认排序是按…

PID控制原理基本介绍(图解)

PID控制原理基本介绍(图解) 这里先以一个阶跃响应做图解说明: 如下图所示,目标值设定为单位1,随着我们逐渐增大比例系数Kp,可以看到系统相应速度逐渐加快,但是始终存在稳态误差, 如下图所示,引入积分环节后,随着积分控制系数Ki逐渐加大,误差逐渐减小,并最终达…

SSM毕设项目 - 基于SSM的婚纱摄影网站(含源码+论文)

文章目录1 项目简介2 实现效果2.1 界面展示3 设计方案3.1 概述3.2 系统流程3.2.1 系统开发流程3.3 系统结构设计4 项目获取1 项目简介 Hi,各位同学好呀,这里是M学姐! 今天向大家分享一个今年(2022)最新完成的毕业设计项目作品,【…

OPNET Modeler 的安装及其相关配置

文章目录前言一、安装包下载1、OPNET Modeler 安装包下载2、Visual Studio 2010 安装包下载二、配置C/C环境变量三、OPNET Modeler 的安装1、安装 modeler_145A_PL1_7116_win2、安装 modeler_docs_28-Jan-2008_win3、安装 models_145A_PL1_27Feb08_win4、安装 OPNET.Modeler.14…

PLC中ST编程的基础知识

程序组织单元,简称POU;完整的PLC程序就是由无数个POU组成的; FB:功能块,也称函数块,执行时产生一个或多个值,一个功能块可以创建多个实例; VAR_IN:输入变量&#xff0c…

java绘制标注框,注册字体

文章目录场景思路步骤1.注册字体2.绘制标注框保存文本3.效果如下:场景 有个项目需要在java的后台将AI算法的标识框,置信度值,画到上传的报警图片上。以前都在算法部分画,但是效率有点低,所以传过来原始的图片(也会用来…

第三章:JVM监控及诊断工具-GUI篇

JVM监控及诊断工具-GUI篇 使用上一章命令行工具或组合能帮您获取目标Java应用性能相关的基础信息,但它们存在下列局限: 无法获取方法级别的分析数据,如方法间的调用关系、各方法的调用次数和调用时间等(这对定位应用性能瓶颈至关重要)。要求用户登录到…

手写一个react,看透react运行机制

适合人群 本文适合0.5~3年的react开发人员的进阶。 讲讲废话: react的源码,的确是比vue的难度要深一些,本文也是针对初中级,本意让博友们了解整个react的执行过程。 写源码之前的必备知识点 JSX 首先我们需要了解什么是JSX。…

Flutter高仿微信-第19篇-支付-我的零钱

Flutter高仿微信系列共59篇,从Flutter客户端、Kotlin客户端、Web服务器、数据库表结构、Xmpp即时通讯服务器、视频通话服务器、腾讯云服务器全面讲解。 详情请查看 效果图: 实现代码: /*** Author : wangning* Email : maoning20080809163.…

Unity DOTS学习 前置知识(一)

DOTS是什么 Data-Oriented Technology Stack(面向数据的技术栈) Unity 使用的5个核心包: The C# job system 提供快速安全的多线程操作The Burst compiler 优化C#代码的编译器,能够编译生成比mono或者L2CPP更快的代码。可以编译Unity中的任何代码Unit…

解决传统难题,WMS系统实现信息数据实时追踪

随着社会经济的发展,传统仓库的存储和做工难以适应当下市场经济的需求。仓库需要进行转型升级,从而适应当下的环境。在仓库的转型升级过程当中,WMS系统是不可或缺的一部分内容。 而WMS系统的应用会从多方面支持仓库的转型升级,其带…

uniapp之最新获取用户昵称以及头像

前言 在uniapp登录时候最开始想的就是手机号登录之后,就获取用户的昵称以及头像,存储起来,登录的时候直接显示在我的页面,最开始使用的是 uniapp官网自带的uni.getUserProfile的方法,就可以获取用户的头像跟昵称&…

Prometheus Operator与kube-prometheus之二-如何监控1.23+ kubeadm集群

简介 系列文章: 标签 - Prometheus - 东风微鸣技术博客 (ewhisper.cn)Prometheus Operator 的上一篇: Prometheus Operator 与 kube-prometheus 之一 - 简介 - 东风微鸣技术博客 (ewhisper.cn) kube-prometheus-stack捆绑了监控Kubernetes 集群所需的Prometheus Operator、Ex…

Web(二)html5基础-表格基本结构

第1关_网页表格的基本概念 第2关_创建简单的表格 本关任务:创建一个两行两列的表格。 相关知识:为了完成本关任务,你需要掌握:1.表格的结构及对应的标签,2.表格标签的属性。 表格的结构及对应的标签。一个基本的表格是…

Netty系列(二):Netty拆包/沾包问题的解决方案

上一篇说到Netty系列(一):Springboot整合Netty,自定义协议实现,本文聊一些拆包/沾包问题。 拆包/沾包问题 TCP是面向字节流的协议,在发送方发送的若干包数据到接收方接收时,这些数据包可能会被…

Linux笔记

一。基础思想 一切皆文件。 两条权限原则: 权限分组原则权限最小原则 su是切换用户,而sudo则是用root权限执行某操作( 普通用户sudo安全) Linux目录 系统只存在一颗文件树、从/开始,所有的文件都挂载在这个节点上。…

JaCoCo增量覆盖率的基本实现原理

什么是增量覆盖率 如图所示,在master分支提交了HelloController,然后从master拉了个新分支test;提交了第1次代码,增加了WorldController;提交了第2次代码,增加了DonController。增量的获取方式有两种&#…

报表工具使用教程-FineReport决策报表导出Plus

前言 通过决策报表导出插件,用户可以将单张决策报表导出为 Excel ,PDF,Word 格式文件。 那么用户如何将决策报表导出为 PPT 或 Image 格式文件呢?如何将多张决策报表合并导出至一个文件呢? 1.实现思路 用户通过安装…

静态时序分析简明教程(七)]端口延迟

端口延迟一、写在前面1.1 快速导航链接二、端口延迟2.1 输入有效2.2 输出有效2.3 set_input_delay2.3.1 -clock clock_name2.3.2 -clock_fall2.3.3 -level_sensitive2.3.4 -rise/fall2.3.5 min/max2.3.6 -add_delay2.3.7 时钟延迟2.4 set_output_delay三、总结一、写在前面 一…

点击化学FAM荧光素:6-FAM-alkyne,FAM alkyne 6-isomer,6-炔基-羧基荧光素

【中文名称】6-炔基-羧基荧光素 【英文名称】 FAM alkyne,6-isomer,6-FAM-alkyne 【CAS】478801-49-9 【分子式】C24H15NO6 【分子量】413.39 【纯度标准】95% 【包装规格】25mg,50mg,100mg 【是否接受定制】可进行定制,定制时间周…