​深入理解JMeter性能测试日志:分析并发用户行为与吞吐量指标

在进行软件性能测试时,使用Apache JMeter等工具能够生成详尽的测试报告和日志。这些数据对于评估应用程序的性能至关重要。本文将针对JMeter生成的压测日志数据进行详细解析,并解释特定字段的意义。

日志数据摘要:

以下是整个JMeter压测日志的数据:

Creating summariser <summary>
Created the tree successfully using script/XXX查询.jmx
Starting standalone test @ Sun Jul 24 02:49:48 CST 2022 (1658602188821)
Waiting for possible Shutdown/StopTestNow/HeapDump/ThreadDump message on port 4445
summary +    416 in 00:00:11 =   38.7/s Avg:  2204 Min:   557 Max:  3968 Err:     0 (0.00%) Active: 100 Started: 100 Finished: 0
summary +   1482 in 00:00:30 =   49.4/s Avg:  2047 Min:  1017 Max:  4384 Err:     0 (0.00%) Active: 100 Started: 100 Finished: 0
summary =   1898 in 00:00:41 =   46.6/s Avg:  2081 Min:   557 Max:  4384 Err:     0 (0.00%)
summary +   1649 in 00:00:30 =   55.0/s Avg:  1822 Min:  1011 Max:  3517 Err:     0 (0.00%) Active: 100 Started: 100 Finished: 0
summary =   3547 in 00:01:11 =   50.1/s Avg:  1961 Min:   557 Max:  4384 Err:     0 (0.00%)
summary +   1725 in 00:00:30 =   57.5/s Avg:  1735 Min:   781 Max:  2819 Err:     0 (0.00%) Active: 100 Started: 100 Finished: 0
summary =   5272 in 00:01:41 =   52.3/s Avg:  1887 Min:   557 Max:  4384 Err:     0 (0.00%)
summary +   1726 in 00:00:30 =   57.5/s Avg:  1734 Min:  1093 Max:  2525 Err:     0 (0.00%) Active: 100 Started: 100 Finished: 0
summary =   6998 in 00:02:11 =   53.5/s Avg:  1849 Min:   557 Max:  4384 Err:     0 (0.00%)
summary +   1730 in 00:00:30 =   57.6/s Avg:  1734 Min:   977 Max:  2745 Err:     0 (0.00%) Active: 100 Started: 100 Finished: 0
summary =   8728 in 00:02:41 =   54.3/s Avg:  1826 Min:   557 Max:  4384 Err:     0 (0.00%)
summary +   1725 in 00:00:30 =   57.5/s Avg:  1736 Min:  1092 Max:  2483 Err:     0 (0.00%) Active: 100 Started: 100 Finished: 0
summary =  10453 in 00:03:11 =   54.8/s Avg:  1811 Min:   557 Max:  4384 Err:     0 (0.00%)
summary +   1737 in 00:00:30 =   57.8/s Avg:  1731 Min:   848 Max:  2447 Err:     0 (0.00%) Active: 100 Started: 100 Finished: 0
summary =  12190 in 00:03:41 =   55.2/s Avg:  1800 Min:   557 Max:  4384 Err:     0 (0.00%)
summary +   1722 in 00:00:30 =   57.5/s Avg:  1735 Min:   783 Max:  2429 Err:     0 (0.00%) Active: 100 Started: 100 Finished: 0
summary =  13912 in 00:04:11 =   55.5/s Avg:  1792 Min:   557 Max:  4384 Err:     0 (0.00%)
summary +   1731 in 00:00:30 =   57.6/s Avg:  1735 Min:  1051 Max:  2471 Err:     0 (0.00%) Active: 100 Started: 100 Finished: 0
summary =  15643 in 00:04:41 =   55.7/s Avg:  1786 Min:   557 Max:  4384 Err:     0 (0.00%)
summary +   1217 in 00:00:21 =   58.9/s Avg:  1729 Min:  1052 Max:  2408 Err:     0 (0.00%) Active: 0 Started: 100 Finished: 100
summary =  16860 in 00:05:01 =   55.9/s Avg:  1782 Min:   557 Max:  4384 Err:     0 (0.00%)
Tidying up ...    @ Sun Jul 24 02:54:50 CST 2022 (1658602490697)
... end of run

关键指标解释:

首先,让我们关注日志中的几个关键指标:

  • summary: 这个前缀表示接下来的行是关于测试摘要的信息。
  • in: 表示在某个时间段内完成的请求数量。
  • 吞吐量: 以每秒处理的请求数(Requests per second, RPS)的形式呈现,用于评估系统的性能和处理能力。
  • Avg: 平均响应时间(单位通常是毫秒)。
  • Min 和 Max: 分别代表最小和最大响应时间。
  • Err: 错误率,即失败的请求占总请求的比例。
  • Active、Started 和 Finished: 这三个参数描述了虚拟用户的活跃状态。

以日志中的一条记录为例:

summary +   1731 in 00:00:30 =   57.6/s Avg:  1735 Min:  1051 Max:  2471 Err:     0 (0.00%) Active: 100 Started: 100 Finished: 0

这条记录表明,在过去的30秒内,有1731个请求被成功处理,平均每秒处理约57.6个请求。每个请求的平均响应时间是1735毫秒,最短的响应时间是1051毫秒,最长的响应时间是2471毫秒。在这期间没有发生任何错误,错误率为0%。

现在,我们来分析一下summary =的日志信息。这个部分通常出现在两个连续的summary +之间,用于汇总之前一段时间内的测试结果。例如,第一行的summary =   1898 in 00:00:41 =   46.6/s Avg:  2081 Min:   557 Max:  4384 Err:     0 (0.00%)表示在前面的41秒内,共完成了1898个请求,平均每秒处理约46.6个请求,每个请求的平均响应时间是2081毫秒,最短的响应时间是557毫秒,最长的响应时间是4384毫秒,错误率为0%

接下来,我们来看“Active: 100 Started: 100 Finished: 0”的含义:

  • Active: 当前活跃的并发用户数。在这个例子中,有100个虚拟用户正在执行任务。
  • Started: 启动的用户总数。这里也是100,意味着所有配置的用户都已经启动并开始执行测试。
  • Finished: 完成测试的用户数。这里的0表示还没有用户完成他们的测试任务。

通过观察这三个值的变化,我们可以了解并发用户的行为模式。例如,如果Finished的值开始增加,那么说明一些用户已经完成了他们的测试任务。

结论:

总结来说,JMeter的压测日志提供了丰富的信息,帮助我们理解应用程序在不同负载下的表现。通过对这些数据的分析,我们能够识别瓶颈、优化性能,并最终确保应用在高并发环境下依然稳定可靠。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/773663.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024智能EDM邮件营销系统使用攻略

在数字化营销领域&#xff0c;智能EDM&#xff08;Electronic Direct Mail&#xff09;邮件营销作为一种高效、精准的推广方式&#xff0c;正日益受到企业的高度重视。而要实现这一策略的成功落地&#xff0c;一个高可靠性和高稳定性的专业邮件发送平台则是不可或缺的关键环节。…

大数据分析案例-基于决策树算法构建大学毕业生薪资预测模型

&#x1f935;‍♂️ 个人主页&#xff1a;艾派森的个人主页 ✍&#x1f3fb;作者简介&#xff1a;Python学习者 &#x1f40b; 希望大家多多支持&#xff0c;我们一起进步&#xff01;&#x1f604; 如果文章对你有帮助的话&#xff0c; 欢迎评论 &#x1f4ac;点赞&#x1f4…

前端发版上线出现白屏问题

目录 路由配置问题资源缓存问题首屏加载过慢 &#xff1a;喂&#xff0c;你的页面白啦&#xff01; 出现上线白屏的问题有很多&#xff0c;如&#xff1a;配置错误、缓存问题、浏览器兼容问题&#xff0c;根据不同情况去解决。 路由配置问题 问题描述&#xff1a; 在vue开发…

C语言中位运算介绍

在C语言中&#xff0c;位运算是一种对二进制位进行操作的运算方式&#xff0c;它可以对数据的二进制表示进行位级别的操作&#xff0c;包括按位与、按位或、按位异或、按位取反等。位运算常用于处理底层数据结构、优化代码性能以及实现各种算法。本文将深入介绍C语言中的位运算…

两区域二次调频风火机组,麻雀启发式算法改进simulink与matlab联合

区域1结果 区域2结果 红色曲线为优化后结果〔风火机组二次调频〕

软件杯 深度学习+opencv+python实现车道线检测 - 自动驾驶

文章目录 0 前言1 课题背景2 实现效果3 卷积神经网络3.1卷积层3.2 池化层3.3 激活函数&#xff1a;3.4 全连接层3.5 使用tensorflow中keras模块实现卷积神经网络 4 YOLOV56 数据集处理7 模型训练8 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &am…

鸿蒙操作系统-初识

HarmonyOS-初识 简述安装配置hello world1.创建项目2.目录解释3.构建页面4.真机运行 应用程序包共享包HARHSP 快速修复包 官方文档请参考&#xff1a;HarmonyOS 简述 1.定义&#xff1a;HarmonyOS是分布式操作系统&#xff0c;它旨在为不同类型的智能设备提供统一的操作系统&a…

电脑windows 蓝屏【恢复—无法加载操作系统,原因是关键系统驱动程序丢失或包含错误。.......】

当你碰到下图这种情况的电脑蓝屏&#xff0c;先别急着重装系统&#xff0c;小编本来也是想重装系统的&#xff0c;但是太麻烦&#xff0c;重装系统后你还得重装各种软件&#xff0c;太麻烦了&#xff01;&#xff01; 这种情况下&#xff0c;你就拿出你的启动U盘&#xff0c;进…

2016国赛-路径之谜

分析&#xff1a; 看到n*n以及四个方向移动&#xff0c;那么就直接使用dfs即可。根据题意可知起始位置是(0,0)&#xff0c;终点位置是(n-1,n-1)。 又有要求靶子上的箭数决定了走的路径&#xff0c;那么我们就要加一个判断各个方位的箭数是否符合要求。 示例代码&#xff1a; …

JVM之堆

堆的核心概述 一个JVM实例只存在一个堆内存&#xff0c;堆也是内存管理的核心区域。 Java堆区在JVM启动的时候即被创建&#xff0c;其空间大小也就确定了。是JVM管理的最大一块内存空间。 堆内存的大小是可以调节的。 《JVM虚拟机规范》规定&#xff0c;堆可以处于物理上不连…

Pillow教程04:学习ImageDraw+Font字体+alpha composite方法,给图片添加文字水印

---------------Pillow教程集合--------------- Python项目18&#xff1a;使用Pillow模块&#xff0c;随机生成4位数的图片验证码 Python教程93&#xff1a;初识Pillow模块&#xff08;创建Image对象查看属性图片的保存与缩放&#xff09; Pillow教程02&#xff1a;图片的裁…

盲盒小程序开发,互联网盲盒下的潜在发展优势

近几年&#xff0c;我国潮玩市场经历了爆发式的发展阶段&#xff0c;尤其是盲盒市场屡创新高&#xff01;盲盒商品主打IP衍生品、周边等具有收藏价值的商品&#xff0c;深受市场的追捧&#xff0c;满足了不同年龄群体的需求。面对盲盒的蓝海市场&#xff0c;众多的品牌也纷纷加…

Altium Designer的差分对布线走线技巧及规则设置

AD的PCB页面是有差分对布线的工具的&#xff0c;这种工具的使用首先需要自己添加差分对&#xff0c;才能进行交互式差分对布线&#xff1a; 在原理图中放置差分对标识&#xff0c;其中差分对要以_P和_N结尾来命名&#xff1a; 在原理图中放置差分对&#xff1a; 差分对在PCB中的…

浏览器导出excel

做java web项目时&#xff0c;经常遇到需要在页面上点击导出按钮&#xff0c;然后直浏览器接下载下来一个excel文档。 比如一个List<Person>的集合&#xff0c;需要将每个Person当做一行&#xff0c;输出到excel中去。其中Person实体类如下&#xff1a; import lombok.…

selenium元素定位--xpath定位--层级与逻辑组合定位

其他元素非唯一时&#xff0c;又不想用xpath绝对定位时&#xff0c;需要用到层级与逻辑定位. 一、层级属性结合定位&#xff1a; 遇到元素没有class、name、id等或属性动态变化情况时&#xff0c;可以找父节点元素&#xff0c;父级节点没有id时&#xff0c;可以继续往上找id&…

✨一键释放手机空间,让生活更流畅——手机清理大师超实用体验分享

&#x1f4dd;亲爱的朋友们&#xff0c;你是否也曾为手机里堆积如山的照片、杂乱无章的相册和不断提醒存储不足的问题而头疼不已呢&#xff1f;今天给大家安利一款我近期爱不释手的神器——手机清理大师&#xff0c;它就如同你的手机专属大扫除小能手&#xff0c;让你的手机瞬间…

Python爬虫:爬虫基本概念、流程及https协议

本文目录&#xff1a; 一、爬虫的基本概念1.为什么要学习爬虫1.1 数据的来源1.2 爬取到的数据用途 2.什么是爬虫3. 爬虫的更多用途 二、爬虫的分类和爬虫的流程1.爬虫的分类2.爬虫的流程3.robots协议 三、爬虫http和https1.http和https的概念2.浏览器发送HTTP请求的过,2.1 http…

数据分析面试题(41~50)

41、lstm的原理、lstm和rnn的区别 ①LSTM是一种常用于处理序列数据的循环神经网络&#xff08;RNN&#xff09;架构&#xff0c;特别适用于长序列的建模。其主要特点是通过门控机制来控制信息的流动&#xff0c;从而有效地解决了传统RNN在处理长序列时的梯度消失或爆炸的问题。…

Git学习笔记之基础

本笔记是阅读《git pro》所写&#xff0c;仅供参考。 《git pro》网址https://git-scm.com/book/en/v2 git官网 https://git-scm.com/ 一、git起步 1.1、检查配置信息 git config --list查看所有的配置以及它们所在的文件 git config --list --show-origin可能有重复的变量名…

云原生最佳实践系列 3:基于 SpringCloud 应用玩转 MSE

概述 随着业务不断创新&#xff0c;大型的单个应用和服务会被拆分为数个甚至数十个微服务&#xff0c;微服务架构已经被广泛应用。微服务的好处在于快速迭代&#xff0c;迭代过程保障线上流量不受损。依赖开源产品缺少专业运维工具&#xff0c;常常需要投入较大的运维人力和成…