性能测试——性能测试-常见性能指标-总体概况
并发
概念:
指同一个时间点执行相同的操作(如:秒杀)
同一时间点,向服务器发起的请求(可能是不同的请求)
只要向服务器发起请求,那么服务器在这一时间点内都会收到请求(不管是不是同一个请求)
并发用户数(重点)
- 同一时间点,发出请求的用户数,一个用户可以发出多个请求
- 场景不一定是同一个
- 和 CPU、响应时间有关系
HPS(Hit per Second)
- 点击率,每秒点击数
- 可直接理解为用户在界面上的点击次数
- 一般在性能测试中,都用来描述 HTTP Request,那它代表每秒发送 HTTP 请求的数量,和 RPS 概念完全一样
- HPS 越大对 Server 的压力越大
TPS(Transaction Per Second,最主要的指标)
服务器每秒处理事务数,衡量服务器处理能力的最主要指标
QPS(Queries per Second)
- 每秒查询率,在数据库中每秒执行 SQL 数量
- 一个请求可能会执行多条 SQL
- 某些企业可能会用QPS代替TPS
- 也是衡量服务端处理能力的一个指标,但不建议使用
注意:
TPS、QPS、RPS、HPS、CPS 的总结
有很多维度可以衡量一个系统的性能能力,但是如果把五个指标同时都拿来描述系统性能能力的话,未必太混乱了
为此我们可以这样做
- 用 TPS 来统一形容系统的性能能力,其他的都在各层面加上限制条件来描述
- 在团队中要定义清楚术语的使用场景,还有含义
响应时间(Respose Time)
响应时间对于性能测试来说
- 从发起请求到收到请求响应的时间
- 包含了:Request Time 和 Response Time
- 等价于:发起请求网络传输时间 + 服务器处理时间 + 数据库系统处理时间 + 返回响应网络传输时间
吞吐量(Throughput)
单位时间内,网络处理的请求数量(事务/s)
网络没有瓶颈时,吞吐量≈TPS
吞吐率
单位时间内,在网络传输的数据量的平均速率(kB/s)
资源利用率
- 服务器资源的使用程度,比如服务器(应用、服务器)的CPU利用率,内存利用率,磁盘利用率,网络带宽利用率
- 一般不超过80%
Think Time 思考时间
从业务角度看
- 它指的是用户进行操作时,每个请求之间的时间间隔
- 比如:加入购物车后,多久之后会点击下单?浏览一个商品多久会加入购物车
从性能测试角度看
- 为了模拟用户两次操作之间的时间间隔,才有 Think Time,更加真实的模拟用户的真实操作
- 它和用户行为有关系,所以应该分析的是用户行为而非用户数
=======================================================================