性能测试 | 指标

性能测试的指标有哪些?

Posted by Haauleon on May 20, 2021

一句讲晒:所有的系统性能指标概括起来就是多快好省。

性能测试指标

  • 多 - 并发量
  • 快 - 延时、响应时间(是客户感知的感应时间,是端到端的)
  • 好 - 稳定性(长时间运行)
  • 省 - 资源使用率
  • 思考时间 - 像个人一样思考



响应时间

  对请求做出响应所需要的时间,是用户感知软件性能的主要指标。



一、响应时间包括哪些?

1.用户客户端呈现时间
2.请求/响应数据网络传输时间
3.应用服务器处理时间
4.数据库系统处理时间



二、响应时间多少合理?

  对于一个 web 系统,普遍接受的响应时间标准为 2/5/8 秒。

1
2
3
2 秒钟之内:响应客户是非常好的
5 秒钟之内:响应客户是可以接受的 
8 秒钟之内:客户能接受的响应的上线



并发用户数

一、用户数的概念

  - 系统用户数:软件系统注册的用户总数(保证数据库里有这些真真实实的用户记录)
  - 在线用户数:某段视角内访问的用户数,这些用户只是在线;不一定同时做某一件事情
  - 并发用户数:某一个时间同时向软件系统提交请求的用户数;场景不一定是同一个

系统用户数的注意点:
1.系统注册用户量,第一个影响的是磁盘的空间,因为磁盘空间的满和空对系统的查询是有很大的影响的。所以在做系统性能测试的时候要 初始化环境
2.没有经过初始化环境的性能环境等于没有作用的环境
3.解决两地网络差异问题的方法:Linux 系统注入网络延时的方法。
4.解决数据库环境问题的方法:数据库通过 dump 过来还原环境。


在线用户数的注意点:
1.初始化环境:warn up 热机。让数据从磁盘进入到内存的过程。


并发用户数的注意点:
1.如果有人仅用一个 Jmeter 做性能测试,这是不合格的,说明只有一种场景。

二、并发相关概念

1.并发:用于从业务的角度模拟真实用户同时进行访问。
2.并发数:同时访问系统的用户数。
3.并发分为:严格并发和广义并发。
4.在 C/S 或 B/S 结构的应用,系统的性能主要由服务器决定。服务器在大量用户同时访问时,压力最大。



三、并发场景的场景
  • 访问网站首页
  • 登录功能
  • 核心业务功能
  • 个人中心



四、并发相关的计算

(1)平均并发用户数的计算:C = nL/T

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


(2)并发用户数峰值计算:c^ ≈ C + 3 × √C


实例:
一个 OA 系统,该系统有 3000 个用户,平均每天大约有 400 个用户访问该系统,对一个典型用户来说,一天只在 8 小时内使用该系统,且从登录到退出该系统的平均时间为 4 小时。

解: 平均并发用户数: C = 400 × 4 / 8 = 200
并发用户峰值: C^ = 300 + 3 × √200 ≈ 342.42



吞吐量

一、吞吐量相关的概念

1.性能测试:指单位时间内系统处理用户的请求数
2.从业务角度看:吞吐量可以用 请求数/秒、页面数/秒、人数/天 或 处理业务数/小时 等单位来衡量
3.从网络角度看:吞吐量可以用 字节/秒 来衡量
4.对于交互式应用来说,吞吐量指标反映的是服务器承受的压力,他能够说明系统的负载能力
5.TPS: 每秒事务数(吞吐率:一秒内系统处理用户的请求数)



二、吞吐量相关的计算

(一)当没有遇到性能瓶颈的时候,吞吐量与虚拟用户数之间存在一定的联系,可以采用一下公式计算:
F = VU * R / T

  • F – 吞吐量
  • VU – 虚拟用户个数
  • R – 每个虚拟用户发出的请求数
  • T – 性能测试所用的时间


实例:
采用 100 个并发,每个 VU 间隔 1 秒发出一个请求。

解:
吞吐量 F = 100 * 1 / 1 = 100



性能计数器

一、性能计数器相关的概念

性能计数器:是描述服务器或操作系统性能的一些数据指标(也就是所说的资源使用率)。比如:内存、CPU、磁盘等资源使用率等。



思考时间

一、思考时间相关的概念

思考时间:从业务角度来看,这个时间指用户进行操作时每个请求之间的时间间隔。

注意:
1.在做性能测试时,为了模拟这样的时间间隔,引入了思考时间这个概念,来更加真实的模拟用户的操作