性能测试指标(一)

介绍性能测试的教程和文章比较多,总结性能测试的指标为

  • 多:并发数量
  • 快:延时,响应时间
  • 好:长时间运行
  • 省:资源使用率
    在介绍吞吐量直接先从几个大家熟知的概念说起,

1.响应时间

在这里插入图片描述

响应时间为各个时间段往返时间之和。包括:用户客户端呈现时间,请求/响应数据网络传输时间,应用处理服务器处理时间,数据库系统处理时间。如果是Web系统,接受的时间为2/5/8原则。

2.并发用户数

所谓的用户数有三种类型,分别是:
在这里插入图片描述

所谓的并发也有两种类型,严格并发和广义并发:

  • 严格并发:所有用户在同一时间做同一件时间,如同一时间点击同一个button
  • 广义并发:同一时间做不同的事情,比如用户userA做查询,userB做下单,userC支付
    在确认并发用户之前,必须先对业务场景进行分析,得出最典型的业务场景,然后基于该场景获得并发用户数。
    常见场景:访问网站首页,登录功能,核心业务功能,个人中心

平均并发用户数计算:
在这里插入图片描述

C--平均并发用户数
n--平均每天访问的用户数(login session)
L--一天内从用户登录到退出的平均时间
T--考察时间长度(一天内多长时间有用户登录)

并发用户数的峰值:
在这里插入图片描述
例如一个业务系统,该系统有30k个用户,平均每天大约有500个用户访问改系统,对于一个典型的用户来说,一天有8小时访问该系统,且从登录到退出的平均时间为5h
在这里插入图片描述
当然这个是估算值且基于一定的用户访问。如果是新增一个系统,此时没有任何登录用户数据如何估算呢?可以估计为系统用户数*(5%-20%)

有了上面的概念之后介绍一下吞吐量

3.吞吐量

一个系统的吞度量(承压能力)与request对CPU的消耗、外部接口、IO等等紧密关联。单个reqeust 对CPU消耗越高,外部系统接口、IO影响速度越慢,系统吞吐能力越低,反之越高。因此可以从以下几个角度理解吞吐量:

  • 性能测试:单位时间内系统能处理的用户请求量
  • 业务角度:请求数/秒,处理业务数/h,页面数/秒等方面
  • 网络传输:byte/s

系统吞吐量几个重要参数:QPSTPS)、并发数、响应时间

  • QPS(TPS):每秒钟request/事务 数量
  • 并发数: 系统同时处理的request/事务数
  • 响应时间: 一般取平均响应时间

3.1 TPS

TPS 即Transactions Per Second的缩写,每秒处理的事务数目。一个事务是指一个用户向服务器发送请求然后服务器做出反应的过程**(完整处理,即客户端发起请求到得到响应)**。用户在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使用的时间和完成的事务个数,最终利用这些信息作出的评估分。一个事务可能对应多个请求,可以参考下数据库的事务操作

3.2 QPS

QPS 即Queries Per Second的缩写,每秒能处理查询数目(完整处理,即客户端发起请求到得到响应,比如get请求)。是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。
从它的英文全名可以得出它是查询意思,原来在因特网上,作为域名系统服务器的机器的性能经常用每秒查询率来衡量。对应fetches/sec,即每秒的响应请求数。 虽然名义上是查询的意思,但实际上,现在习惯于对单一接口服务的处理能力用QPS进行表述(即使它并不是查询操作)

3.3平均处理时间

RT:响应时间,处理一次请求所需要的平均处理时间。通常情况下一般还会关注**90%**请求的的平均处理时间,因为可能因网络情况出现极端情况。

这几个参数之间的关系:
QPS = 并发数/平均响应时间
并发量 = QPS * 平均响应时间

4拐点

通过模拟人为真实场景下,不断按阶梯比例增加并发用户数,直到系统性能曲线出现拐点,这个拐点就是我们经常提及的性能瓶颈处。那究竟什么是性能测试曲线的拐点,性能测试曲线拐点是对性能测试结果的分析,“拐点分析"方法是一种利用性能计数器曲线图上的拐点进行性能分析的方法。
在这里插入图片描述
由于在测试性能之前并不知道当前系统能承受的并发请求量有多大,因此查询拐点是一个摸索的过程。拐点分析法的基本思想就是性能产生瓶颈的现象,主要原因就是某个资源(如内存,cpu,网络等)的使用达到了极限,此时表现为随着并发用户压力的增大,系统性能却出现急剧下降,这样就产生了"拐点"现象。当得到"拐点"附近的资源使用情况时,就能定位出系统的性能瓶颈。举个简单的例子,比如系统随着用户的增多,事务响应时间缓慢增加,当用户数达到100k个虚拟用户时,系统响应时间急剧增加,表现为一个明显的"折线”,这就说明了系统承载不了如此多的用户做这个事务,也就是存在性能瓶颈。要判断系统能否满足现状,满足不了就需要继续进行系统调优。

对于容量测试寻找性能拐点可以使用二分逼近法,容量测试的拐点是非常明确地,在拐点上下的性能有明显的区别。只是容量测试的间距一开始注意取得大一些。但是对于并发测试而言,拐点是不太明晰的,所以第一次找到拐点的时候最好做二到三次的确认。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
性能测试是软件测试中的一个重要方面,用于评估系统在不同负载条件下的性能表现。以下是一些常见的性能测试指标: 1. 响应时间(Response Time):指系统从接收请求到返回结果所需的时间。较短的响应时间意味着系统对用户请求的响应速度更快。 2. 吞吐量(Throughput):指单位时间内系统能处理的请求数量。较高的吞吐量表示系统能够处理更多的请求。 3. 并发用户数(Concurrent Users):指同时访问系统的用户数量。通过模拟多个用户同时访问系统,可以评估系统在高并发情况下的性能表现。 4. 资源利用率(Resource Utilization):指系统在执行任务时所使用的硬件资源(如CPU、内存、磁盘等)的利用率。合理的资源利用率可以提高系统的性能效率。 5. 错误率(Error Rate):指在性能测试过程中出现的错误数量占总请求数量的比例。较低的错误率表示系统的稳定性和可靠性较高。 6. 平均负载(Average Load):指系统在一段时间内的平均负荷水平。通过监测平均负载,可以评估系统在长时间运行时的性能情况。 7. 可扩展性(Scalability):指系统在增加负载时的能力以保持性能水平。较好的可扩展性意味着系统能够适应不断增长的用户和数据量。 以上是一些常见的性能测试指标,具体的指标选择和评估方法应根据具体应用场景和需求进行确定。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值