性能测试的几个指标范围(CPU,内存,IO,网络)

性能测试中,对服务端的指标监控也是很重要的一个环节。通过对各项服务器性能指标的监控分析,可以定位到性能瓶颈。

后端性能指标有 CPU,内存,网络,jvm,I/O 等等

分析思路

整体系统 CPU 利用率

内存利用率

磁盘 I/O 的利用率和延迟

网络利用率

CPU 瓶颈分析

监控命令:vmstat、sar、dstat、mpstat、top、ps

类型度量方法衡量标准
利用率1、vmstat 统计 1-%id
2、sar -u 统计 1-%idle
3、dstat 统计 1-%idle
4、mpstat -P ALL 统计 1-%idle
user%+sys%<70%(好)
70%<user%+sys%<=85%(坏)
负载1、vmstat 的 r 值
2、sar -q ,“runq-sz”
3、load average
4、pidstat -p【pid】-w 1 10
r 长期>cpu 个数,cpu 不足
runq-sz 长期>cpu 个数,cpu 不足
load average>cpu 内核数(cpu 繁忙)
nvcswch/s 较大,cpu 时间片不足

内存瓶颈分析

物理内存不够时就会使用 swap 分区,所以性能测试过程中需要关注 swap 和 mem 的使用情况。物理内存不够,大量的内存置换到 swap 空间,可能导致 CPU 和 I/O 的瓶颈。

监控命令:vmstat、sar、dstat、free、top、ps

网络定位分析

监控命令:sar、ifconfig、netstat,以及查看 net 的 dev 速率。

通过查看发现收发包的吞吐率达到网卡的最大上限,网络数据报文有因为这类原因而引起的丢包、阻塞等现象都证明当前网络可能存在瓶颈。

为了减小网络对性能测试的影响,一般我们都在局域网中进行测试执行。

IO 定位分析

I/O 的 TPS、平均 I/O 数据、平均队列长度、平均服务时间、平均等待时间、IO 利用率(磁盘 Busy Time%)等指标
监控命令:sar、iostat、iotop

cpu 瓶颈分析思路

cpu 有没有正常工作

1:top 看 CPU 负载,vmstat 看 CPU 利用率。下面三种情况说明 cpu 没有正常工作,需要看 cpu 在做什么
1)负载过高,利用率过低
2)负载过低,利用率过高
3)负载过低,利用率也低

cpu 在做什么

1:vmstat 看 in 和 cs 是否过高,如果过高,说明中断和上下文切换频繁


2:vmstat 看 usr 和 sys 百分比。
1)如果 sy 百分比过高,说明 cpu 大部分时间花在了内核的系统调用
2)如果 us 百分比过高,说明 cpu 大部分时间花在了代码执行


3:vmstat 看运行队列
1)运行队列 r 值远超 cpu 数,说明 cpu 负载过高
2)b 值过高,说明大量进程处于 IO 等待,IO 可能存在瓶颈

为什么 cpu 不正常工作

1:pidstat -p【pid】-w 1 10 看进程的主动和被动切换。

1)如果主动切换(cswch/s)过高,说明可能 IO,内存资源可能不足
2)如果被动切换(nvcswch/s)过高,说明进程过多,cpu 时间片不足

2:watch -d cat /proc/interrupts 查看系统中断

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

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

相关文章

VMware虚拟机内部打开错误

修改vmci0.present"TRUE" 找到虚拟机相对应的"***.VMX文件";用记事本打开它,找到这一行:vmci0.present"TRUE"将TRUE改为 FALSE或者直接将这行删除。(只是临时解决兼容性问题)。重启VM虚拟机。

【论文精读】Diffusion Transformer(DiT)

摘要 以往的Diffusion模型主要以卷积UNet作为主干网络&#xff0c;本文发现U-Net的归纳偏差对Diffusion模型的性能并不是至关重要的&#xff0c;可以用Transformer等取代。通过利用其他视觉方向成熟的Transformer方案和训练方法&#xff0c;Diffusion模型可以从这些架构中获益&…

一篇文章搞懂CDN加速原理

目录 一、什么是CDN CDN对网络的优化作用主要体现在以下几个方面&#xff1a; 二、CDN工作原理 CDN网络的组成元素&#xff1a; 三、名词解释 3.1 CNAME记录&#xff08;CNAME record&#xff09; 3.2 CNAME域名 3.3 DNS 3.4 回源host 3.5 协议回源 一、什么是CDN CD…

【SpringBoot3】Spring Security 常用配置总结

注&#xff1a;本文基于Spring Boot 3.2.1 以及 Spring Security 6.2.1 相关文章 【SpringBoot3】Spring Security 核心概念 【SpringBoot3】Spring Security 常用注解 【SpringBoot3】Spring Security 详细使用实例&#xff08;简单使用、JWT模式&#xff09; 【SpringBoot3】…

【MATLAB GUI】 4. 坐标区和表

看B站up主freexyn的freexyn编程实例视频教程系列36Matlab GUI的学习笔记 文章目录 坐标区表 坐标区 任务要求设计一个图像显示界面&#xff0c;根据选定的周期做出相应的sin函数图像 使用坐标区、弹出式菜单、普通按钮设计页面&#xff0c;弹出式菜单string设置为1、2、3、4代…

linux定时清理缓存

1、创建清理缓存脚本2、脚本授权3、创建自动任务4、查看自动任务是否添加成功 1、创建清理缓存脚本 vim cache_clean.sh #!/bin/bash #每天清除一次内存buff/cache缓存 echo "开始清除缓存" sync; #写入硬盘&#xff0c;防止数据丢失 for i in $(seq 3);do sudo sh…

【Linux系统化学习】深入理解匿名管道(pipe)和命名管道(fifo)

目录 进程间通信 进程间通信目的 进程间通信的方式 管道 System V IPC&#xff08;本地通信&#xff09; POSIX IPC&#xff08;网络通信&#xff09; 管道 什么是管道 匿名管道 匿名管道的创建 匿名管道的使用 匿名管道的四种情况 匿名管道的五种特性 命名管道 …

iOS总体框架介绍和详尽说明

iOS总体框架介绍和详尽说明 一、iOS是什么&#xff1f;1.iOS简述2.iOS界面 二、iOS总体框架介绍和详尽说明1.iOS的框架层级1. 核心操作系统层&#xff08;Core OS layer&#xff09;1.1 Accelerate Framework1.2 Core Bluetooth Framework1.3 External Accessory Framework1.4 …

【wails】(4):使用wails做桌面应用开发,整合chatgpt-web项目做前端,进行本地开发,web端也可以连调,使用websocket实现

1&#xff0c;视频地址 【wails】&#xff08;4&#xff09;&#xff1a;使用wails做桌面应用开发&#xff0c;整合chatgpt-web项目做前端&#xff0c;进行本地开发&#xff0c;web端也可以连调&#xff0c;使用websocket实现 2&#xff0c;演示效果 启动先是报500 错误&#…

Charles小程序抓包(安卓版)

微信小程序/公众号抓包的主流方式 目前有以下几种&#xff1a; 1、WindowsBurpProxifier&#xff08;配置困难&#xff0c;数据包卡顿) 2、Burp安卓模拟器&#xff08;模拟器卡顿&#xff09; 3、BurpCharles&#xff08;本文测试&#xff0c;抓包完整&#xff0c;放包流畅…

编程语言选择的方法

根据目的选择 理论上说&#xff0c;只要达到目的&#xff0c;选择任何一种编程语言都可以。实际上&#xff0c;只要确定了想要编写的内容和执行环境&#xff0c;就可以在某种程度锁定可以使用的语言的种类。 比如&#xff0c;如果想要创建Windows的桌面应用&…

防御保护第八、九、十、十一天笔记

一、内容安全 1、DFI和DPI技术 --- 深度检测技术 DPI是一种基于应用层的流量检测和控制技术&#xff0c;它会对流量进行拆包&#xff0c;分析包头和应用层的内容&#xff0c;从而识别应用程序和应用程序的内容。这种技术增加了对应用层的分析&#xff0c;识别各种应用&#xf…

Vue学习之响应式基础

声明式响应状态 在组合式API中&#xff0c;推荐使用ref()函数来声明响应式状态&#xff1a; Import{ref} from vueref() 接收参数&#xff0c;并将其包裹在一个带有 .value 属性的 ref 对象中返回&#xff1a; Const countref(0) Console.log(count)//{value:0} Console.log…

【2024.02.22】定时执行专家 V7.0 发布 - TimingExecutor V7.0 Release - 龙年春节重大更新版本

目录 ▉ 新版本 V7.0 下载地址 ▉ V7.0 新功能 ▼2024-02-21 V7.0 - 更新日志▼ ▉ V7.0 新UI设计 ▉ 新版本 V7.0 下载地址 BoomWorks软件的最新版本-CSDN博客文章浏览阅读10w次&#xff0c;点赞9次&#xff0c;收藏41次。▉定时执行专家—毫秒精度、专业级的定时任务执行…

Jenkins2.426邮件通知配置

之前安装的jenkins出现问题了&#xff0c;重新装了jenkins&#xff0c;需要重新配置&#xff1a;Maven&#xff0c;JDK&#xff0c;Allure报告&#xff0c;邮件通知&#xff0c;Extended E-mail Notification等 配置Maven&#xff0c;JDK参考&#xff1a;CICD集合(四):Jenkins…

vue中使用wangEditor富文本编辑器

jsd-2306-vue-01: 教学项目教学项目教学项目教学项目教学项目 2306-vue-baking-teacher: 教学项目教学项目教学项目教学项目 一、脚手架工程中使用富文本编辑器wangEditor 1.通过以下命令 安装wangEditor npm i wangeditor -S 2.在main.js文件中添加以下配置信息 //引入wa…

快别回消息了哥,快手测试开发工程师三面

大家好&#xff0c;我是chowley&#xff0c;进回顾一下之前参加的技术面试 部门&#xff1a;商业化 时间&#xff1a;50min 平台&#xff1a;轻雀&#xff0c;这平台纯nt&#xff0c;用Mac面试&#xff0c;麦克风老连我iPhone 过程 自我介绍实习经历一实习经历二有用到覆盖…

PYthon:super与类的继承

两种继承方式&#xff1a; Class SubClass(FartherClass)&#xff1a;子类可以任意调用父类的成员变量、成员函数&#xff0c;适合单继承&#xff0c;即只继承一个父类。 Super&#xff1a;适合多继承 统一用一种&#xff0c;不要交叉用。 class FooParent(object): def _…

多数pythoneer只知有列表list却不知道python也有array数组

数组和列表 Python中数组和列表是不同的&#xff0c;我敢断言大多数的pythoneer只知道有列表list&#xff0c;却不知道python也有array数组。列表是一个包含不同数据类型的元素集合&#xff0c;而数组是一个只能含相同数据类型的元素集合。 Python的array库是一个提供数组操作…

第七篇【传奇开心果系列】python的文本和语音相互转换库技术点案例示例:Sphinx自动电话系统(IVR)经典案例

传奇开心果博文系列 系列博文目录python的文本和语音相互转换库技术点案例示例系列 博文目录前言一、雏形示例代码二、扩展思路介绍三、Sphinx多语言支持示例代码四、Sphinx和语音合成库集成示例代码五、Sphinx语音识别前自然语言预处理示例代码六、Sphinx语音识别自动电话系统…