JMeter压力测试初体验:线程组、取样器、监听器的简单使用以及如何查看压测结果

news2024/11/25 4:57:02

🧑‍💻作者名称:DaenCode
🎤作者简介:CSDN实力新星,后端开发两年经验,曾担任甲方技术代表,业余独自创办智源恩创网络科技工作室。会点点Java相关技术栈、帆软报表、低代码平台快速开发。技术尚浅,闭关学习中······
😎人生感悟:尝尽人生百味,方知世间冷暖。
📖所属专栏:JMeter实战


在这里插入图片描述


专栏推荐

  • 专门为Redis入门打造的专栏,包含Redis基础知识、基础命令、五大数据类型实战场景、key删除策略、内存淘汰机制、持久化机制、哨兵模式、主从复制、分布式锁等等内容。链接>>>>>>>>>《Redis从头学》
  • SpringBoot实战相关专栏,包含SpringBoot过滤器、拦截器、AOP实现日志、整合Freemaker、整合Redis等等实战相关内容,多篇文章登入全站热榜、领域热榜、被技术社区收录。链接>>>>>>《SpringBoot实战》

文章目录

  • 专栏推荐
  • 🌟前言
  • 🌟线程组配置
    • 添加线程组
    • 配置线程组
  • 🌟取样器配置
    • 添加HTTP请求取样器
    • 取样器配置
  • 🌟监听器配置
    • 添加监听器-结果树
    • 添加聚合报告
  • 🌟压测结果查看
    • 结果树查看
    • 聚合报告查看
    • 聚合报告分析
  • 🌟写在最后

🌟前言

上一节中对JMeter的介绍、安装以及汉化,包括目录的结构进行了解释,本文来对其进行一个简单的压测使用。


🌟线程组配置

添加线程组

选择Test Plan-》右击-》Add-》Threads(Users)-》Thread Group
在这里插入图片描述

配置线程组

将线程组的名称改为自己测试的名称,按照下图所示进行配置。以下是参数解释:

  • Number of Threads (users):并发用户数,即同时执行测试的虚拟用户数量。

  • Ramp-Up Period (in seconds):启动所有线程所需的时间,即在指定时间内启动所有线程。

  • Loop Count:每个线程要执行的循环次数。

  • Delay Thread creation until needed:延迟线程创建,直到需要启动时才创建线程。

  • Scheduler:设置线程组的计划执行时间。

    • Duration (seconds):设置测试的总持续时间。
    • Startup Delay (seconds):测试启动前的延迟时间。
  • Specify Thread Lifetime :指定线程生命周期。

    • Forever:线程组将一直运行,直到测试停止。
    • Until:线程组运行到预定义的时间或条件满足时停止。
    • Duration (seconds):指定线程组运行的持续时间。
  • Action to be taken after a Sampler error:当采样器出现错误时要采取的操作。

    • Continue:继续执行下一个采样器。
    • Start Next Thread Loop:开始下一个线程循环。
    • Stop Thread:停止当前线程。
    • Stop Test:停止整个测试。

在这里插入图片描述


🌟取样器配置

添加HTTP请求取样器

添加HTTP请求取样器,选中线程组-》右键-》Add-》Sampler-》HTTP Request。
在这里插入图片描述

取样器配置

配置如下图所示:以下是相关参数解释:

  • Protocol:指定请求的协议,例如 HTTP 或 HTTPS。
  • Server Name or IP:指定服务器的主机名或 IP 地址。
  • Port Number:指定服务器的端口号。
  • Method:指定请求的 HTTP 方法,如 GET、POST、PUT、DELETE 等。
  • Path:指定请求的路径,包括 URI 和查询参数。
  • Content Encoding:指定请求的内容编码方式,例如 gzip、deflate 等。
  • Parameters:设置请求的参数。您可以手动添加参数名和值,并选择是否对值进行 URL 编码。
  • Use multipart/form-data for POST:对于 POST 请求,选择是否使用 multipart/form-data 格式来上传文件或发送表单数据。
  • Browser-compatible headers:选择是否使用与浏览器兼容的头部信息。
    在这里插入图片描述

🌟监听器配置

添加结果树监听器以及聚合报告为的就是查看接口的测试结果。

添加监听器-结果树

按下图所示步骤,为线程组添加结果树监听器
在这里插入图片描述

添加聚合报告

在这里插入图片描述


🌟压测结果查看

后端服务也就是IDEA中启动相关服务,然后就可以按照下图操作进行压测。要记得先保存测试计划。
在这里插入图片描述

结果树查看

在这里插入图片描述

聚合报告查看

在这里插入图片描述

聚合报告分析

 lable: sampler的名称
  Samples: 一共发出去多少请求,例如10个用户,循环10次,则是 100
  Average: 平均响应时间
  Median: 中位数,也就是 50% 用户的响应时间
  90% Line : 90% 用户的响应不会超过该时间 (90% of the samples took no more than this time.     The remaining samples at least as long as this)
  95% Line : 95% 用户的响应不会超过该时间
  99% Line : 99% 用户的响应不会超过该时间
  min : 最小响应时间
  max : 最大响应时间
  Error%:错误的请求的数量/请求的总数
  Throughput: 吞吐量——默认情况下表示每秒完成的请求数(Request per Second) 可类比为qps、tps
  KB/Sec: 每秒接收数据量

🌟写在最后

有关于JMeter压力测试初体验:线程组、取样器、监听器的简单使用以及如何查看压测结果到此就结束了。感谢大家的阅读,希望大家在评论区对此部分内容散发讨论,便于学到更多的知识。


请添加图片描述

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

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

相关文章

王国纪元 - 龙火战场+国战+IP联动ACW

IGG出品 龙火战场 类似于一个演习战场,给平时不常打仗的小伙伴一个打仗的机会。 大致流程:进场5分钟可以和朋友聊天打屁,商量战术,之后5分钟可以进攻哨塔和传送阵(低级联赛没有传送阵),哨塔没什…

如何写出一个成熟的线上线下结合的营销方案?

分享一下咱们案例库里策划的一个线上线下结合的活动的案例。 这个活动是为了推广一个新品牌,增加品牌知名度和用户粘性。 你可以根据以下几个要点来进行活动策划: 1、目标: 让目标用户了解并喜欢新品牌,激发用户参与和分享&am…

使用延迟队列解决分布式事务问题——以订单未支付过期,解锁库存为例

目录 一、前言 二、库存 三、订单 一、前言 上一篇使用springcloud-seata解决分布式事务问题-2PC模式我们说到了使用springcloud-seata解决分布式的缺点——不适用于高并发场景 因此我们使用延迟队列来解决分布式事务问题,即使用柔性事务-可靠消息-最终一致性方…

【JAVASE】图书管理系统

⭐ 作者:小胡_不糊涂 🌱 作者主页:小胡_不糊涂的个人主页 📀 收录专栏:浅谈Java 💖 持续更文,关注博主少走弯路,谢谢大家支持 💖 图书管理系统 1. 设计思路图2. 创建 boo…

2023年 国赛 数学建模C 基于遗传算法和神经网络的销量定价模型

一、写在开头 阅读者可能需要先阅读2023年国赛C题才能读懂下面的内容。 文章着重于解题方向指引和经历分享,只解释部分核心代码。 二、内容概述 刚刚做完比赛,对这段经历和对问题的处理方法进行下记录。 三、个人经历 今年大三,第一…

stm32f103步进电机S曲线计算

S曲线主要实现低速扭力大,更快更稳 https://zhuanlan.zhihu.com/p/396648926?utm_campaign&utm_mediumsocial&utm_oi1361101006265331712&utm_psn1686906450235133952&utm_sourcezhihu 可点击上面链接查看啤酒杯的运动动画 摘自一段知乎上一段关于…

html div span 容器元素

html div && span 容器元素 div 标签定义 HTML 文档中的一个分隔区块或者一个区域部分, 标签常用于组合块级元素,以便通过 CSS 来对这些元素进行格式化 span 用于对文档中的行内元素进行组合 标签提供了一种将文本的一部分或者文档的一部分独立出来的方式 &…

【ELFK】之zookeeper

一、Zookeeper是什么? zooleeper是一个分布式服务管理框架。存储业务服务节点元数据及信息,并复制;通知客户端在zookeeper上注册的服务节点状态,通过文件系统通知机制 1、Zookeeper工作机制 Zookeeper从设计模式角度来理解 是…

Java——文件操作IO

一 、文件File 狭义的文件: 指硬盘上的 文件 和 目录 。 广义的文件: 泛指计算机中的很多软硬件资源。 针对硬盘这种持久化存储的I/O设备,当我们想要进行数据保存时, 往往不是保存成一个整体,而是独立成一个个的单位…

C/C++简单计算器 2019年12月电子学会青少年软件编程(C/C++)等级考试一级真题答案解析

目录 C/C简单计算器 一、题目要求 1、编程实现 2、输入输出 二、解题思路 1、案例分析 三、程序代码 四、程序说明 五、运行结果 六、考点分析 C/C简单计算器 2019年12月 C/C编程等级考试一级编程题 一、题目要求 1、编程实现 一个最简单的计算器,支持…

Hadoop NameNode执行命令工作流程

Hadoop NameNode执行命令工作流程 客户端API或者CLI与NameNode的交互命令数据的格式(1) 预处理流程(2) 创建NameNode与NameNodePrcServer流程(3) HDFS API以及CLI的命令到NameNode的工作执行流程(4) 执行命令的参数流动 客户端API或者CLI与NameNode的交互命令数据的格式 hadoop…

读高性能MySQL(第4版)笔记10_查询性能优化(上)

1. 三管齐下 1.1. 不做、少做、快速地做 1.2. 如果查询太大,服务端会拒绝接收更多的数据并抛出相应错误 1.3. 如果查询写得很糟糕,即使库表结构再合理、索引再合适,也无法实现高性能 1.4. 查询优化、索引优化、库表结构优化需要齐头并进&…

JS的WebAPI

WebAPI背景知识 什么是 WebAPI 前面学习的 JS 分成三个大的部分 ECMAScript: 基础语法部分 DOM API: 操作页面结构 BOM API: 操作浏览器 WebAPI 就包含了 DOM BOM. 什么是 API API 是一个更广义的概念. 而 WebAPI 是一个更具体的概念, 特指 DOMBOM,所谓的 API …

使用 Elasticsearch、OpenAI 和 LangChain 进行语义搜索

在本教程中,我将引导您使用 Elasticsearch、OpenAI、LangChain 和 FastAPI 构建语义搜索服务。 LangChain 是这个领域的新酷孩子。 它是一个旨在帮助你与大型语言模型 (LLM) 交互的库。 LangChain 简化了与 LLMs 相关的许多日常任务,例如从文档中提取文本…

服务网格和CI/CD集成:讨论服务网格在持续集成和持续交付中的应用。

🌷🍁 博主猫头虎 带您 Go to New World.✨🍁 🦄 博客首页——猫头虎的博客🎐 🐳《面试题大全专栏》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 &a…

混淆矩阵细致理解

1、什么是混淆矩阵 混淆矩阵(Confusion Matrix)是深度学习和机器学习领域中的一个重要工具,用于评估分类模型的性能。它提供了一个清晰的视觉方式来展示模型的预测结果与真实标签之间的关系,尤其在分类任务中,帮助我们…

浅谈应急照明系统在民用建筑的设计应用与产品选型

贾丽丽 安科瑞电气股份有限公司 上海嘉定 201801 【摘要】应急照明分为备用照明、安全照明及疏散照明。文章介绍了应急照明系统的设计、灯具选择、灯具布置、配电等要求。并结合实例进行疏散照明的计算,以指导应急照明系统的设计与应用。 【关键词】照度&#xf…

大数据学习1.4-xShell配置Hadoop

1.创建hadoop目录 mkdir /usr/local/hadoop 2.切换到hadoop中 cd /usr/local/hadoop/ 3.将hadoop直接拖到xShell中 4.解压hadoop tar -zxvf hadoop-2.7.1.tar.gz 5.配置环境变量 vi /etc/profile export PATH$PATH:/usr/local/hadoop/hadoop-2.7.1/bin 6.加载配置文件(不能…

【刷题】蓝桥杯

蓝桥杯2023年第十四届省赛真题-平方差 - C语言网 (dotcpp.com) 初步想法,x y2 − z2(yz)(y-z) 即xa*b,ayz,by-z 2yab 即ab是2的倍数就好了。 即x存在两个因数之和为偶数就能满足条件。 但时间是(r-l)*x&am…

Mybatis学习笔记8 查询返回专题

1.返回实体类 2.返回List<实体类> 3.返回Map 4.返回List<Map> 5.返回Map<String,Map> 6.resultMap结果集映射 7.返回总记录条数 新建模块 依赖 目录结构 1.返回实体类 如果返回多条,用单个实体接收会出异常 2.返回List<实体类> 即使返回一条记…