压力测试中的指标

  • 1 压力测试中的指标
    • 1.1 TPS
    • 1.2 QPS
    • 1.3 平均处理时间(RT)
    • 1.4 并发用户数(并发量)
    • 1.5 换算关系
    • 1.6 TPS和QPS的区别
  • 2 压力测试方法
  • 3 名称概念解释
    • 1. QPS
    • 2. TPS
    • 3. RPS

1 压力测试中的指标

1.1 TPS

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

1.2 QPS

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

1.3 平均处理时间(RT)

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

1.4 并发用户数(并发量)

每秒对待测试接口发起请求的用户数量。

1.5 换算关系

QPS = 并发数/平均响应时间
并发量 = QPS * 平均响应时间

比如3000个用户(并发量)同时访问待测试接口,在用户端统计,3000个用户平均得到响应的时间为1188.538ms。所以QPS=3000/1.188538s= 2524.11 q/s。

我们就可以这样描述本次测试,在3000个并发量的情况下,QPS为2524.11,平均响应事件为1188.538ms

1.6 TPS和QPS的区别

这个问题开始,我认为这两者应该是同一个东西,但在知乎上看到他们的英文名,现在我认为:
QPS 每秒能处理查询数目,但现在一般也用于单服务接口每秒能处理请求数。

TPS 每秒处理的事务数目,如果完成该事务仅为单个服务接口,我们也可以认为它就是QPS。

PS:还有一个RPS的的概念 request per second 。每秒请求数,在一定条件下和QPS 和TPS类似。

2 压力测试方法

我们可以使用压测工具模拟多用户对系统进行压力测试。以一定请求总量,保持不变,逐步增加并发量,观察QPS的变化及平均响应时间的变化。

比如10000的总请求数,然后测试100的并发量情况下的QPS值,然后200, 300, 400, 500等。

一个系统吞吐量通常由TPS、并发数两个因素决定,每套系统这两个值都有一个相对极限值,在应用场景访问压力下,只要某一项达 到系统最高值,系统的吞吐量就上不去了,如果压力继续增大,系统的吞吐量反而会下降,原因是系统超负荷工作,上下文切换、内存等等其它消耗导致系统性能下降。这里给出一份使用ab工具的压测图。

从图中可以看出2000的并发量时,QPS已经达到2500左右,后续加大并发数仍维持在2500,说明该接口在该配置下,QPS为2500,即每秒该系统的能力只能处理2500个请求左右,后面加大的并发量,只会导致平均响应时间的增加。(PS:因为每秒只能处理2500个请求,而一次性有7000的并发,自然会造成请求堆积,导致平均响应时间会变长)我们看到超过14000之后连QPS也开始急剧下降,说明系统超负荷工作,导致性能开始急剧下降。
而一般情况下,我们认为平均响应时间达到一定值,就已经不可以接受了。

3 名称概念解释

1. QPS

Queries Per Second,每秒查询数。每秒能够响应的查询次数。QPS是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准,在因特网上,作为域名系统服务器的机器的性能经常用每秒查询率来衡量。每秒的响应请求数,也即是最大吞吐能力。

2. TPS

Transactions Per Second 的缩写,每秒处理的事务数目。一个事务是指一个客户机向服务器发送请求然后服务器做出反应的过程。客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使用的时间和完成的事务个数,最终利用这些信息作出的评估分。

TPS 的过程包括:客户端请求服务端、服务端内部处理、服务端返回客户端。
例如,访问一个 Index 页面会请求服务器 3 次,包括一次 html,一次 css,一次 js,那么访问这一个页面就会产生一个“T”,产生三个“Q”。

3. RPS

RPS 代表吞吐率,即 Requests Per Second 的缩写。吞吐率是服务器并发处理能力的量化描述,单位是 reqs/s,指的是某个并发用户数下单位时间内处理的请求数。某个并发用户数下单位时间内能处理的最大的请求数,称之为最大吞吐率。
有人把 RPS 说等效于 QPS。其实可以看作同一个统计方式,只是叫法不同而已。RPS/QPS,可以使用 apache ab 工具进行测量。

压力测试中的指标概念相关推荐

  1. 压力测试中 4 个常见面试题总结

    今天来说 4 个关于压力测试的面试题,如果你有更好的回答也可以给小编留言. 1.简述压力测试步骤 (1)测试环境准备:压测机资源(8核CPU.16G内存.机器数量4-7台).被测系统服务器资源.数据库 ...

  2. 压力测试中存在的问题

    压力测试中存在的问题 (What) 什么是压力测试 软件压力测试是一种基本的质量保证行为,它是每个重要软件测试工作的一部分.软件压力测试的基本思路很简单: 不是在常规条件下运行手动或自动测试,而是在计 ...

  3. 性能测试连载 (7)-jmeter 压力测试中的难点解析

    概述 新人在用jmeter做压力测试的时候,会被一些性能术语搞懵,直接导致的后果就是对测试出来的结果数据根本不能理解,更谈不上分析.这篇文章着重给大家实例解释一下jmeter压力测试的一些专有名词 问 ...

  4. Jmeter 压力测试中关于 Http 的那些事儿

    作者 | chenyk 来源 | https://www.jianshu.com/p/c0c09b5ef26a Http请求模拟 1.新建线程组 操作:鼠标右键测试计划 -> 添加 -> ...

  5. Jmeter压力测试中的相关参数(QPS、TPS)

    QPS(Queries Per Second):每秒能够响应的查询次数,也即是最大吞吐能力(吞吐量). TPS(Transactions Per Second):每秒处理的事务数目.一个事务是指一个客 ...

  6. 压力测试概念及方法(TPS/并发量)

    最近在对代码进行压力测试,这里整理一下压测中的指标和方法. 文章目录 1 压力测试中的指标 1.1 TPS 1.2 QPS 1.3 平均处理时间(RT) 1.4 并发用户数(并发量) 1.5 换算关系 ...

  7. 【40-系统性能压力测试基本概念-相关性能指标HPSTPSQPSRT-安装Jmeter教程-JMeter测试流程-线程组-取样器-监视器-测试商城首页-JMeter Address 占用的问题】

    一.知识回顾 [0.三高商城系统的专题专栏都帮你整理好了,请点击这里!] [1-系统架构演进过程] [2-微服务系统架构需求] [3-高性能.高并发.高可用的三高商城系统项目介绍] [4-Linux云 ...

  8. 【性能测试】压力测试指标全解之TPS、响应时间

    hello,大家好!我是磨磨唧唧小蘑菇~ 接上期阐述了<TP50/90/99/999>的含义及计算方式,本期将阐述压力测试的其他指标,如TPS.响应时间等. 目录 一.TPS 二.响应时间 ...

  9. 软件测试中的压力测试是什么?

    压力测试 压力测试是一种软件测试,用于验证软件应用程序的稳定性和可靠性.压力测试的目标是在极其沉重的负载条件下测量软件的健壮性和错误处理能力,并确保软件在危急情况下不会崩溃.它甚至可以测试超出正常工作 ...

最新文章

  1. 机器学习入门|快速掌握逻辑回归模型
  2. ansible 下lineinfile详细使用
  3. 关于VC++6.0中getline函数的一个bug
  4. 华为服务器默认什么系统,云服务器默认系统
  5. 【项目合作】低清老视频转高清,视频超分辨
  6. 队列定义、队列的存储结构
  7. 疫情当前,华为云数据库携手WeLink保障企业云上办公数据稳定可靠
  8. 学生物的女朋友都能看懂的哈希表总结!
  9. 前端的快速入门用法---mdui
  10. java手游服务开发_jforgame,一个用java编写的轻量级手游服务端框架
  11. mybatis源码之MapperMethod
  12. 工欲善其事,必先利其器 — “CSDN浏览器插件” 办公必备“神器” | 你值得拥有
  13. Vue学习笔记04(关键字搜索)
  14. 51单片机之蜂鸣器弹钢琴
  15. 如何修改Oracle VM virtualbox虚拟机的屏幕大小
  16. 浏览器下载的excel文件损坏无法打开
  17. Linux基础第一课——基础知识了解
  18. keil5实现LED灯闪烁,简单延时函数不生效解决办法
  19. 中关村电子商户纷纷搬走或转型 为哪般
  20. 格式化数字,逢千位数加逗号

热门文章

  1. 新魔百盒M304A_增强版2+16G_S905系列_第三方线刷固件及教程
  2. 【Java语法】基础查漏补缺
  3. 机器人开发--Pepperl+Fuchs倍加福激光雷达系列
  4. 电信aep平台是什么意思_杠杆股票配资平台米牛金融股票配资线上炒股配资公司:现代场内与场外配资是什么意思...
  5. 初学者必看篇之国产数据库---达梦
  6. openstack Rocky版本安装和配置swift服务教程
  7. 计算机相关英文文档重点单词(一)
  8. 微信小程序自动化测试实践
  9. ARM V8A体系结构-第十九章 ARMv8 Models
  10. 3d全景图片制作软件有哪些?哪款软件比较好用?