jmeter性能测试指标(负载测试)
  uxD5xZ5DWt0x 2023年11月02日 53 0
  • 1.说明
  • 什么是实际的性能测试???
  • 1)思考时间:用户在做不同操作之间有时间停顿,或者延迟,思考时间就是模拟用户的操作过程中的停顿的间。
  • 2)步伐,速度:主要包括,大量用户进来的时间和退出时间,控制迭代之间的时间,例如,现场用户20个,设置5秒内全部进入,就是这样的情况。
  • 3)压力测试时间:假如需要500个人同时测试30分钟,这里持续30分钟就是压测时间。
  • 2.步骤
  • 第一步:插件安装
  • 插件安装教程(点击即可查看)
  • 插件下载地址:
  • (客户端插件下载地址) https://jmeter-plugins.org/downloads/old/
  • JMeterPlugins-Standard-1.4.0.zip
  • JMeterPlugins-Extras-1.4.0.zip
  • (服务端插件下载地址) https://github.com/undera/perfmon-agent
  • ServerAgent-2.2.1.zip
  • 第二步:添加jp@gc - Stepping Thread Group
  • 右键测试计划---->添加----->Threads(Users)----->jp@gc - Stepping Thread Group
  • ** 第三步:添加监听器jp@gc - Active Threads Over Time**
  • 右键测试计划---->添加---->监听器---->jp@gc - Active Threads Over Time
  • 完整添加HTTP Request后,点击运行测试,查看Active Threads Over Time运行结果。可查看线程陆续启动的曲线,到达设置的最大线程数后,将持续运行设置的时间,到达设置的持续时间后,陆续结束进程。
  • 备注:可在性能测试的同时监控服务器的资源使用情况(点击,可查看教程)


  • jmeter相关的第三方监控插件

  • 当作为网络吞吐量时(LR分析器中的throughput统计图是网络吞吐量),与HPS有一定的联系,但是不是必然的正比关系。
  • 当然在发送的报文或请求的大小一定的情况下,HPS越高,Throughput也相应的越大。
  • 一般情况下,发送报文或请求较大时的HPS会比发送报文或请求较小时的HPS小,但较大报文或请求的Throughput不一定比较小报文或请求的Throughput小
  • 点击数HPS (每秒点击次数):是指发起请求时, 服务端对请求进行响应的页面资源对应的请求数量.
  • 注意:
  • 日常操作中, 对页面的点击动作不是这里说的点击数
  • 该指标只在 Web 项目中需要注意
  • 5、吞吐量 、吞吐率
  • 吞吐量:单位时间内处理的请求数量(事务/s)(衡量网络)
  • 吞吐量是指单位时间内系统能处理的请求数量,体现系统处理请求的能力,这是目前最常用的性能测试指标。
  • QPS(每秒查询数)、TPS(每秒事务数)是吞吐量的常用量化指标,另外还有HPS(每秒HTTP请求数)。注,网络没有瓶颈的时候,服务器每秒处理的事物数应该等于吞吐量数值
  • 跟吞吐量有关的几个重要是:并发数、响应时间。
  • QPS(TPS),并发数、响应时间它们三者之间的关系是:
  • QPS(TPS)= 并发数/平均响应时间
  • 吞吐率:单位时间内通过的数据的平均速率(kB/s)
  • 如,请求数据多少k,这个数据在网络中需要传输的时间
  • 6、事务
  • 指一个客户机向服务器发送请求然后服务器做出反应的过程。
  • Jmeter中默认一个接口请求就是一个事务。
  • Jmeter中也支持多个接口整体作为一个事务。
  • 7、TPS/QPS(每秒事务数) (重点)
  • TPS:服务器每秒处理的事物数(衡量服务器处理能力的综合体现+最主要指标)
  • TPS是单位时间内处理事务的数量,从代码角度来说,一段代码或多段代码可以组成一个事务.单位时间内完成的事务数越多,服务器的性能越好
  • QPS:每秒查询率(如登录,可能会查询是否用户已存在,是否已登录,密码是否正确等)
  • TPS和QPS的区别?
  • TPS(transaction per second)是单位时间内处理事务的数量,QPS(query per second)是单位时间内请求的数量。TPS代表一个事务的处理,可以包含了多次请求。很多公司用QPS作为接口吞吐量的指标,也有很多公司使用TPS作为标准,两者都能表现出系统的吞吐量的大小,TPS的一次事务代表一次用户操作到服务器返回结果,QPS的一次请求代表一个接口的一次请求到服务器返回结果。当一次用户操作只包含一个请求接口时,TPS和QPS没有区别。当用户的一次操作包含了多个服务请求时,这个时候TPS作为这次用户操作的性能指标就更具有代表性了。
  • 个人理解如下:
  • 1、Tps即每秒处理事务数,包括了
  • 1)用户请求服务器
  • 2)服务器自己的内部处理
  • 3)服务器返回给用户
  • 这三个过程,每秒能够完成N个这三个过程,Tps也就是N;
  • 2、Qps基本类似于Tps,但是不同的是,对于一个页面的一次访问,形成一个Tps;但一次页面请求,可能产生多次对服务器的请求,服务器对这些请求,就可计入“Qps”之中。
  • 例如:访问一个页面会请求服务器3次,一次访问,产生一个“T”,产生3个“Q”
  • 8、点击率、点击量
  • “吞吐率”图和“点击率”图的区别:
  • “吞吐率”图,是每秒服务器处理的HTTP申请数。
  • “点击率”图,是客户端每秒从服务器获得的总数据量。
  • 点击数:是衡量Web服务器处理能力的一个重要指标。它的统计是客户端向Web服务器发了多少次HTTP请求计算的。通常我们也用每秒点击次数(Hits per Second)指标来衡量Web服务器的处理能力。
  • 9、错误率
  • 定义: 错误率指系统在负载情况下,失败交易的概率。
  • 错误率 = (失败交易数/交易总数)*100%
  • 注意:
  • 大多系统都会要求无限接近于 100% 成功率, 因此, 错误率一般都非常低
  • 相对稳定的系统产生的错误率又称超时率(由网络传输导致的)
  • 10、资源的利用率(包含cpu、内存、磁盘I/O等):
  • 定义: 系统资源(CPU/内存/磁盘/网络)使用占比(使用量/总量*100%)
  • 利用率指标:(没有特殊要求情况下)
  • CPU 不超过 75%-85%
  • 内存不超过 80%
  • 硬盘不超过 90%(容量占有率/读写时间比)
  • CPU进行判断和处理,能反应系统的繁忙程度,一般分系统CPU与用户CPU
  • Load Average:指一段时间内,CPU正在处理和等待CPU处理的任务,即CPU使用队列的长度统计信息
  • Memory:数据从内存上读取要比从磁盘上读取的速度要快,而内存经常出现内存泄露或内存溢出的现象
  • 队列:队列较长,说明处理能力达到了极限或者遇到阻塞
  • IO:与磁盘交互
  • 网络:重点关注网络流量,看是否存在网络带宽瓶颈
  • 注:一般要求资源利用率不超过80%
  • 硬件性能:
  • cpu
  • 内存
  • 磁盘(disk I/O)
  • 网络(NETWORK I/0)
  • 1、CPU
  • 定义:
  • CPU指标主要指的CPU利用率,包括用户态(user)、系统态(sys)、等待态(wait)、空闲态(idle)。
  • 参考标准
  • CPU 利用率要低于业界警戒值范围之内,即小于或者等于75%;
  • CPU sys%小于或者等于30%;
  • CPU wait%小于或者等于5%;
  • 2、内存
  • 定义:
  • 内存是计算机中重要的部件之一,它是与CPU进行沟通的桥梁。计算机中所有程序的运行都是在内存中进行的,因此内存的性能对计算机的影响非常大
  • 参考标准
  • 现在的操作系统为了最大利用内存,在内存中存放了缓存,因此内存利用率100%并不代表内存有瓶颈,衡量系统内存是否有瓶颈主要靠SWAP(与虚拟内存交换)交换空间利用率,一般情况下,SWAP交换空间利用率要低于70%,太多的交换将会引起系统性能低下。
  • 3、磁盘
  • 定义:
  • 定义和解释:磁盘吞吐量简称为Disk Throughput,是指在无磁盘故障的情况下单位时间内通过磁盘的数据量。
  • 参考标准
  • 磁盘指标主要有每秒读写多少兆,磁盘繁忙率,磁盘队列数,平均服务时间,平均等待时间,空间利用率。其中磁盘繁忙率是直接反映磁盘是否有瓶颈的的重要依据,一般情况下,磁盘繁忙率要低于70%。
  • 4、网络
  • 定义:
  • 网络吞吐量简称为Network Throughput,是指在无网络故障的情况下单位时间内通过的网络的数据数量。单位为Byte/s。网络吞吐量指标用于衡量系统对于网络设备或链路传输能力的需求。当网络吞吐量指标接近网络设备或链路最大传输能力时,则需要考虑升级网络设备。
  • 参考标准
  • 网络吞吐量指标主要有每秒有多少兆流量进出,一般情况下不能超过设备或链路最大传输能力的70%。
  • CPU对数据进行判断以及逻辑处理,本身不能存储数据;这时cpu从内存取数据进行逻辑计算,如果内存没有数据,才会从硬盘读数据到内存,再对数据进行处理
  • 就像人吃饭一样,cpu就是人,内存就是碗,硬盘就是饭锅!
  • 当cpu进程等待,会造成内存开销的增加,内存不够用的时候会用到虚拟内存,导致虚拟内存的增加,这时磁盘IO开销就会增加,系统态sy%提升,cpu开销增加;内存里数据不够用,才用磁盘中取数据。

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
uxD5xZ5DWt0x
最新推荐 更多