【性能测试基础】性能专有名词解析及性能瓶颈分析技巧

AI测试工程师面试指南:从模型评估到工程实践的全方位解析 在人工智能系统日益普及的今天,如何确保其质量与可靠性成为关键挑战。AI测试作为软件测试的重要分支,其核心在于应对模型输出的不确定性和数据分布的动态变化。从技术原理上看,它深度融合了机器学习模型评估、数据监控和系统鲁棒性验证等方法。在工程实践中,AI测试的价值体现在通过自动化测试、持续集成和性能优化,保障AI服务从开发到上线的全链路质量。应用场景广泛覆盖推荐系统、计算机视觉、自然语言处理等领域,尤其注重在复杂环境下模型的稳定输出。本文聚焦于AI测试工程师的面试准备,系统梳理了从模型评估、缺陷定位到工程化落地的 阅读详情

性能的指标参数

名词解释

1. 线程数

在这里插入图片描述
能以线程式并发的方式,帮我们达成“短时间内向服务器发送大量请求”这一任务。

多线程式并发测试工具,顾名思义,会启动复数个线程,让每个线程独立向服务器端发出请求。

2. TPS Transactions Per Second(每秒传输的事物处理个数)

即服务器每秒处理的事务数。TPS包括一条消息入和一条消息出,加上一次用户数据库访问.

一个事务是指一个客户机向服务器发送请求然后服务器做出反应的过程。客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使用的时间和完成的事务个数。

在这里插入图片描述
TPS的高低也会像木桶效应的影响与多种因素相关,当一处存在短板时会导致整个接口乃至系统的出现TPS上不去的情况。

3. 响应时间

在这里插入图片描述

从用户发送一个请求到用户接收到服务器返回的响应数据这段时间就是响应时间

关键路径:下图为一次http请求经过的路径,请求会经过网络发送到web服务器进行处理,如果需要操作DB,再由网络转发到数据库进行处理,然后返回值给web服务器,web服务器最后把结果数据通过网络返回给客户端

Response time = (N1+N2+N3+N4)+ (A1+A2+a3),即:(网络时间 + 应用程序处理时间)
事务平均响应时间。
单个事务平均下来完成的速度越快,那么单位时间内能完成的事务数就越多,TPS就就越高

4. 95分位响应时间

请求数的响应时间从小到大排序后,剔除末端的百分之五的响应时间后得到的最高的响应时间称为95分位的响应时间,这样可以将瞬间的毛刺(尖峰)去掉,同时95分位与平均响应时间之差越小,表示系统的响应越趋于稳定

5. 请求错误个数

顾名思义:当前请求中出现的错误个数,可能是由于断言问题、服务器响应、资源丢失等问题造成的,常见的服务器响应码有404/500/502等,当出现错误个数我们可以调取jmeter的log来查看相应的报错日志。

常见的请求状态码

200:正确的请求返回正确的结果,如果不想细分正确的请求结果都可以直接返回200

301:请求成功,但是资源被永久转移。比如说,我们下载的东西不在这个地址需要去到新的地址。

400:请求出现错误,比如请求头不对等。

401:没有提供认证信息。请求的时候没有带上 Token 等。

403:请求的资源不允许访问。就是说没有权限。

404:请求的内容不存在。

500:服务器错误。代码有问题,需看下服务端代码

502:网关错误,多为配置了Nginx网关,未启动相应的服务

503:服务暂时不可用。服务器正好在更新代码重启。

6. 系统CPU使用率

使用率包含user(用户)和sys(系统),CPU使用率指的是程序在运行期间实时占用的CPU百分比,这是对一个时间段内CPU使用状况的统计。通过这个指标可以看出在某一个时间段内CPU被占用的情况。
在压测过程中user+sys的应控制在80%以下,高于80%服务器将存在一定的负载压力,服务器有瓶颈,导致压测结果不准。
top命令查看服务器CPU使用率和负载
在这里插入图片描述

7. 系统CPU负载

cpu负载是衡量一台服务器使用资源情况的提现,当负载越高时,服务器的压力越大。
如:一座桥上,没有车流量负载为0,为1时刚好满足桥面的正常通行,但是车流已经很堵了,如果到2到3则说明,桥已经堵的基本动不了了,车辆都停在次等待通行,cpu负载也如此,但是理想情况是满负载情况下的百分之70%。
如何计算服务器的负载?
grep ‘model name’ /proc/cpuinfo | wc -l
服务器的满负载是32,所以负载低于22.4属于正常,越高则可能影响到压测数据的分析。
在这里插入图片描述

8. 流量

流量的消耗包好进入服务器的流量和服务器往外部发送的流量,
进服务器的流量: 接口请求进入的流量,另外一方面 是从db/redis读取数据返回来的流量
出服务器的流量: 发起去读redis/mysql的语句,另外一方面就是服务器返回给压力机的返回结果流量
流量的高低可能会受服务器的带宽影响,当数据流量很大时,服务器已达到了最大带宽使用,会导致TPS无法继续增长的问题

性能瓶颈浅析(TPS无法提高)

1、网络带宽
在压力测试中,有时候要模拟大量的用户请求,如果单位时间内传递的数据包过大,超过了带宽的传输能力,那么就会造成网络资源竞争,间接导致服务端接收到的请求数达不到服务端的处理能力上限。

2、连接池
可用的连接数太少,造成请求等待。连接池一般分为服务器连接池(比如Tomcat)和数据库连接池(或者理解为最大允许连接数也行)。

3、垃圾回收机制
因为java的的堆栈内存是动态分配,具体的回收机制是基于算法,回收如果较频繁,那么对TPS
也是有一定影响的,因为垃圾回收其本身就会占用一定的资源。

4、数据库配置
高并发情况下,如果请求数据需要写入数据库,且需要写入多个表的时候,如果数据库的最大连接数不够,或者写入数据的SQL没有索引没有绑定变量,抑或没有主从分离、读写分离等

5、硬件资源
包括CPU(配置、使用率等)、内存(占用率等)、磁盘(I/O、页交换等)。

6、压力机
比如jmeter,单机负载能力有限,如果需要模拟的用户请求数超过其负载极限,也会间接影响TPS(这个时候就需要进行分布式压测来解决其单机负载的问题,一般情况单台够用)。

7、业务逻辑
业务解耦度较低,较为复杂,整个事务处理线被拉长导致的问题。

8、系统架构
比如是否有缓存服务,缓存服务器配置,缓存命中率、缓存穿透以、缓存过期、是否含有死锁等,都会影响到测试结果。

性能拐点图

在这里插入图片描述
图中有三条曲线,分别表示资源的利用情况

  1. Utilization,包括硬件资源和软件资源
  2. 吞吐量(Throughput,这里是指每秒事务数)
  3. 响应时间(Response Time)。

图中坐标轴的横轴从左到右表现了并发用户数(Number of Concurrent Users)的不断增长。

在这张图中我们可以看到,最开始,随着并发用户数的增长,资源占用率和吞吐量会相应的增长,但是响应时间的变化不大;
不过当并发用户数增长到一定程度后,资源占用达到饱和,吞吐量增长明显放缓甚至停止增长,而响应时间却进一步延长。
如果并发用户数继续增长,你会发现软硬件资源占用继续维持在饱和状态,但是吞吐量开始下降,响应时间明显的超出了用户可接受的范围,并且最终导致用户放弃了这次请求甚至离开。

当系统的负载等于最佳并发用户数时,系统的整体效率最高,没有资源被浪费,用户也不需要等待;当系统负载处于最佳并发用户数和最大并发用户数之间时,系统可以继续工作,但是用户的等待时间延长,满意度开始降低,并且如果负载一直持续,将最终会导致有些用户无法忍受而放弃;而当系统负载大于最大并发用户数时,将注定会导致某些用户无法忍受超长的响应时间而放弃。

根据此图可以知道,当性能出现瓶颈时往往伴随着响应时间的成倍增长和吞吐量的下降,在我们进行压测的过程中可以适当增加并发的线程数,来根据接口的响应时间和吞吐量的值来判断是否出现了性能瓶颈,当出现性能的瓶颈时我们可以根据前面所讲到的方式去观察服务器的资源使用情况,数据库连接池等配置来对接口进行分析

ClickUp Brain语音功能解析:AI助手如何提升团队协作效率 语音识别和自然语言处理作为人工智能的核心技术,通过将语音信号转换为文本并理解用户意图,实现了人机交互的自然化转型。在团队协作和项目管理领域,这些技术能够显著降低信息输入和检索的上下文切换成本,提升工作效率。ClickUp Brain的语音生成功能正是基于这一技术原理,将语音指令深度集成到项目管理流程中,实现了快速任务创建、智能信息检索和实时报告生成等核心场景。该功能通过语音识别层、自然语言理解层和API集成层的协同工作,让用户能够通过自然对话方式操作项目管理工具,特别适合移动场景和快速构思的工作需求。 阅读详情

相关推荐

软件项目开发全流程解析:从架构设计到实施部署

软件开发项目通常涉及复杂的架构设计和技术选型过程。从技术原理上看,现代软件架构主要分为单体架构、微服务架构和混合架构三种模式,各自适用于不同规模和应用场景的项目需求。在工程实践中,Spring Boot和React等技术栈因其开发效率和扩展性优势,成为企业级应用开发的热门选择。通过合理运用Redis缓存和Kafka消息队列等中间件,可以显著提升系统性能和可靠性。典型的软件开发流程包括需求分析、架构设计、模块开发、测试部署等关键阶段,其中性能优化和安全防护是需要特别关注的技术要点。本文以'bjtwo'项目为例

weixin_34239169的博客 436

jmeter tps指标在哪里看_jmeter性能测试讲的很详细

提问1如何在大并发测试下,让登录或者后续接口只执行一次?回答这个问题网上的答案其实很多,但是大多不靠谱。比如推荐使用仅一次控制器,但是仅一次控制器对线程组无效;比如推荐跨线程组调用,但是这样比较繁琐,新人也搞不定;其实只要各位对元件熟悉,这个问题很简单下图100线程:添加一个吞吐量定时器,选择总数计算下面这就ok了,是不是很简单?提问2大并发的登录之后,后续接口在做并发的时候有一些session重...

weixin_39780962的博客 1777

汉字转拼音资源包实战:多音字消歧与批量转换避坑指南

在中文文本处理中,汉字转拼音是搜索索引、语音合成和数据清洗的基础环节。其核心原理是通过映射表将汉字与拼音对应,但多音字、姓氏和生僻字常导致转换错误。一份高质量的拼音映射资源能显著提升转换准确率,技术价值在于实现离线、可控的批量处理。常见应用场景包括用户昵称检索、输入法词库构建和语音合成前端。本文拆解的汉字转拼音资源包,提供txt和json两种格式,并分享多音字消歧、姓氏处理及性能优化的实战经验,帮助开发者避开常见陷阱。

weixin_33754065的博客 506

一个95分位延迟要求5ms的场景,如何做性能优化

组内的数据系统在承接一个业务需求时无法满足性能需求,于是针对这个场景做了一些优化,在此写篇文章做记录。业务场景是这样:调用方一次获取某个用户的几百个特征(可以把特征理解为属性),特征以 r...

梦醒人间 728

从STM32转战STC32G?逐飞开源库帮你快速上手GPIO、PWM与ADC(避坑指南)

本文详细介绍了从STM32迁移到STC32G32K128的开发实践,重点解析了GPIO、PWM和ADC等基础外设的设计差异,并提供了基于逐飞开源库的高效应用方案。通过对比两种平台的开发工具和操作方式,帮助开发者快速上手STC32G,避免常见陷阱,提升开发效率。

weixin_30316097的博客 532

TMS320F280039 CMD文件配置避坑指南:从.map文件看懂内存分配与溢出排查

本文详细解析了TMS320F280039芯片的CMD文件配置问题,通过.map文件分析内存分配与溢出排查。文章提供了实用的诊断技巧和解决方案,帮助开发者有效应对段溢出、地址重叠和栈堆冲突等常见问题,优化DSP程序的内存管理。

weixin_29168813的博客 446

性能测试 - 响应时间的衡量指标 RPS Average Min Max P90 P95 P99

引言 性能测试的报告,通常会涉及到一些响应时间的考量指标,如 Locust Report : 我们通常关心的有这几个:RPS, Average, Min, Max, P90, P95, P99 RPS 衡量服务器的吞吐能力,每秒服务器处理的请求数(也称 TPS 每秒处理的事务数) RPS = 总请求数 / 请求的总耗时 Avg 衡量服务器大体处理情况,平均处理每个请求耗时。 Avg = 请求总耗时 / 请求总数 但是这个指标通常会掩盖一些异常值,不够全面。 Min 从单个请求耗时最小的值 Max 从单个请

wumingxiaoyao的博客 1万+

声纹识别初学

最近开始关注声纹识别技术,发现国内做这个的确实没有几家,而且大多重点推声纹认证,用在公安司法金融领域,而我却关注文本无关的声纹识别,这里把我搜到的一点资料汇总在此. 发现njustzj001的专栏有两篇文章适合入门的我,贴下链接: 综述:  http://blog.youkuaiyun.com/xmu_jupiter/article/details/47209961 PLDA解释:  http://

u013452331的专栏 2760

99分位、95分位计算 实时分位数的统计方法

之前做的一个项目上线有一段时间了,但一直也没有来得及做统计分析(峰值、平均QPS、……)。最近刚好又被问到了这个事情,所以抽空学习了解一下部分监控指标的概念和含义,方便后续自己做统计分析。 一、分位数 1、概念 分位数(Quantile),TP=Top Percentile,即对一批数值型数据进行排序之后,排在p%位置的数值大小,是数据分析中非常重要的统计指标之一。常用的分位数包括:80分位数,90分位数,99分位数等。 然而,在实时计算(流式计算)场景中,由于无法在有限的时间内对海量数据进行全局的

spirit_8023的博客 4万+

Virtuoso集成HspiceD:打通模拟设计全流程的仿真与PEX实战

本文详细介绍了Virtuoso集成HspiceD在模拟设计全流程中的应用,包括仿真与PEX实战。通过无缝衔接Virtuoso和HspiceD,设计师可以在同一环境中完成从原理图设计到PEX后仿真的全流程,大幅提升工作效率。文章还提供了仿真环境配置、前仿真关键设置、PEX全流程详解以及性能调优等实用技巧。

weixin_29271263的博客 98

阿里云百炼平台创建智能体-上传文档

阿里云百炼智能体-上传文档文件

weixin_43930851的博客 1358

性能测试常见术语浅析

之前在性能测试过程中,对于某些其中的术语一知半解,导致踩了很多坑。这篇博客,就常见的一些性能测试术语进行一次浅析。。。   负载 对被测系统不断施加压力,直到性能指标超过预期或某项资源使用达到饱和,以验证系统的处理极限,为系统性能调优提供依据; 并发 ①狭义上的并发:所有用户在同一时间点进行同样的操作,一般指同一类型的业务场景,比如1000个用户同时登陆系统; ②广义上的并发:多个用户...

weixin_33724659的博客 403

Bob-Smith电路在千兆以太网(1000BASE-T)中的优化设计与性能分析

本文深入探讨了Bob-Smith电路在千兆以太网(1000BASE-T)中的关键作用与优化设计。分析表明,相较于单纯追求75欧姆电阻的精确匹配,优化重点应转向PCB布局对称性、高频元件选型及共模路径完整性,以有效抑制共模噪声、提升信号完整性,并确保系统通过EMC测试。

weixin_29281941的博客 279

性能测试相关归纳总结(持续更新)

执行./jmeter -n -t test.jmx -l test.jtl Jmeter命令参数: -n 表示非界面模式 -t 表示要测试的脚本 -l 表示执行的结果文件 -R 表示启用远程服务,后面跟远程机器,即slave机器列表。通过确定一个系统的瓶颈或者不能接受的性能点,来获得系统能提供的最大服务级别的测试,以出错位目标。集合点是测试脚本中的一个标记,当每个虚拟用户执行到标记处时,会停留在标记处等待其他的虚拟用户,当达到预期设置的并发数时,标记处的所有用户同时启动执行后续的请求。

weixin_41146102的博客 953

单片机实验五 静态数码管实验

1.熟悉实验软件和硬件,进行正确的接线;2.数码管依次显示数字0-F;

m0_51738372的博客 4416

优快云独家首发!万字长文,YOLOv5/v7/v8算法模型yaml文件史上最详细解析与教程!小白也能看懂!掌握了这个就掌握了魔改YOLO的核心!

🍀🍀🍀YOLOv5/v7/v8算法模型yaml文件史上最详细解析与教程,全网最强,学不会算我输!!!

Coding... 1万+

一文彻底搞懂性能测试

性能测试概念我们经常看到的性能测试概念,有人或称之为性能策略,或称之为性能方法,或称之为性能场景分类,大概可以看到性能测试、负载测试、压力测试、强度测试等一堆专有名词的解释。针对这些概念,我不知道你看到的时候会不会像我的感觉一样:乱!一个小小的性能测试,就延伸出了这么多的概念,并且概念之间的界限又非常模糊。就拿“压力测试”、“容量测试”和“极限测试”这三个概念来说吧。压力测试是评估系统处于或超过预期负载时系统的运行情况。压力测试的关注点在于系统在峰值负载或超出最大载荷情况下的处理能力。

2401_86343726的博客 1012

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

性能:到底什么是性能测试

概念 我们经常看到的性能测试概念,有人或称之为性能策略,或称之为性能方法,或称之为性能场景分类,大概可以看到性能测试、负载测试、压力测试、强度测试等一堆专有名词的解释。但是这些东西(压力测试、容量测试、负载测试等等),在实际的项目实施过程中,都不具备全局的指导价值。你应该在性能领域中抛弃这些看似非常有道理实则毫无价值的概念。 性能测试: 针对系统的性能指标,建立性能测试模型,指定性能测试方案,指定监控策略,在场景条件之下执行性能场景,分析判断性能瓶颈并调优,最终得出性能结果来评估系统的性能指标是否满足既定值

OceanStar的博客 539

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

【2024全网最火最全性能教程】一文搞懂性能测试!

在性能测试的概念中,性能指标、性能模型、性能场景、性能监控、性能实施、性能报告,这些既是概念中的关键词,也可以说是性能测试的方法和流程。而这些概念我们在实际的工作中,都是非常重要的。因为它们要抹平沟通的误解。让不同层级,不同角色的人,可以在同样的知识背景下沟通,也可以让做事情的人有清晰的逻辑思路,同时对同行间的交流,也有正向的促进作用。性能测试策略、性能测试场景、性能测试指标,这些关键的概念在性能测试中深深地影响着很多人。我们简化它的逻辑,只需要记住几个关键字就可以,其他的都不必使用。

MAYUHAO1011的博客 402

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

性能测试从0到1

在性能测试的概念中,性能指标、性能模型、性能场景、性能监控、性能实施、性能报告,这些既是概念中的关键词,也可以说是性能测试的方法和流程。而这些概念我们在实际的工作中,都是非常重要的。因为它们要抹平沟通的误解。让不同层级,不同角色的人,可以在同样的知识背景下沟通,也可以让做事情的人有清晰的逻辑思路,同时对同行间的交流,也有正向的促进作用。性能测试策略、性能测试场景、性能测试指标,这些关键的概念在性能测试中深深地影响着很多人。我们简化它的逻辑,只需要记住几个关键字就可以,其他的都不必使用。

huace3740的博客 297

性能测试必备知识-io系列

说说IO(一)- IO的分层   IO性能对于一个系统的影响是至关重要的。一个系统经过多项优化以后,瓶颈往往落在数据库;而数据库经过多种优化以后,瓶颈最终会落到IO。而IO性能的发展,明显落后于CPU的发展。Memchached也好,NoSql也好,这些流行技术的背后都在直接或者间接地回避IO瓶颈,从而提高系统性能。   IO系统的分层:     三层结构

yanping_ren的专栏 1255

ASR AT开ADB:从原理到实战的语音识别技术解析

当前方案已能满足基本需求,未来可从以下方向优化:- 个性化适配:学习开发者发音特征提升识别率- 边缘计算:在设备端完成全部处理降低延迟- 多模态交互:结合手势等增强控制方式想亲手实践语音AI开发?推荐体验从0打造个人豆包实时通话AI实验,完整实现ASR到TTS的全流程开发。我在实际操作中发现其模块化设计让集成变得非常便捷,特别适合想快速上手的开发者。基于火山引擎豆包大模型,从零搭建一个实时语音通话应用。

2600_94960137的博客 917

GPT Live语音模型技术解析:从原理到同声传译实战应用

语音识别与机器翻译作为自然语言处理的核心技术,通过深度学习模型实现了跨语言沟通的突破。其技术原理基于端到端的神经网络架构,将语音信号直接映射为目标语言文本,显著提升了处理效率。在技术价值层面,这种实时翻译能力打破了传统语言障碍,为国际交流、商务会议等场景提供了全新解决方案。GPT Live作为先进的语音翻译模型,在实时性和准确性方面表现出色,特别适合需要低延迟响应的同声传译应用。通过结合Transformer架构和流式处理机制,该模型能够有效处理连续语音输入,为开发者构建实时翻译系统提供了可靠的技术基础。

weixin_34290096的博客 459

AI功能测试实战篇

边界词是指。

qq_45334136的博客 417

文本聚类算法优化:基于hf_mirrors/unsloth/embeddinggemma-300m向量

在大数据时代,文本数据呈现爆炸式增长,如何从海量非结构化文本中快速挖掘潜在主题与模式成为NLP领域的核心挑战。传统文本聚类算法常受限于高维稀疏特征带来的"维度灾难",而基于预训练语言模型的向量表示为解决这一问题提供了新范式。本文将系统介绍如何利用hf_mirrors/unsloth/embeddinggemma-300m向量模型优化文本聚类流程,通过架构解析、参数调优、算法适配三大维度,构建高性能...

gitblog_00725的博客 414

非结构化数据处理:从原始文本到结构化输出的完整流程

数据清洗是数据处理流程中的基础环节,涉及对原始非结构化数据的规范化处理。其核心原理是通过编码转换、特殊字符处理、模式匹配等技术手段,将杂乱的输入数据转化为统一格式的结构化信息。在技术价值层面,有效的数据清洗能够提升数据质量、保障系统安全、增强数据可用性。正则表达式作为模式匹配的重要工具,在信息提取环节发挥关键作用,结合字符串处理和验证机制,可以构建稳健的数据处理管道。这类技术广泛应用于内容管理系统、数据集成平台、搜索引擎优化等场景。本文以实际案例展示了如何从包含多语言混排、特殊符号的原始文本中,通过系统化的

weixin_34218890的博客 417
上一篇: 【Android自动化】自动输入安装密码,并检测App是否安装成功
下一篇: 【构建压测环境】模拟网络延迟与CPU占用
晴时初遇雨
博客等级 码龄7年 1253粉丝 72原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值