2.JMeter压测接口

概述

今日目标:

  • JMeter使用
    • 配置线程组
    • 配置 HTTP 接口
    • 配置断言
      • 配置响应断言
      • 配置断言响应时间
    • 配置结果监听
    • 压测报告
      • 接口准备
      • 聚合报告
      • 察看结果树
      • 其它
    • 线程组配置详解
      • 线程数
      • Ramp-Up
  • bug
  • 结束

JMeter使用

双击 ApacheJMeter.jar 启动,然后修改名称,点击保存,选择路径
在这里插入图片描述

配置线程组

配置线程组,相当于多少 并发数
在这里插入图片描述
在这里插入图片描述
线程属性说明:

  • 线程数:20,线程数据,这里设置20个线程
  • ramp-up:表示在指定时间之内将这些线程全部启动起来。如果n=1,表示要在1s以内将20个线程全部启动起来。
  • 循环次数:200,表示将 20 线程 循环 200 次,也就是说,每个线程调用接口 200

配置 HTTP 接口

http://localhost:8080/jMeter/test

在这里插入图片描述
在这里插入图片描述选择 keepalive 方式,表示使用了长连接。使用长连接可以防止频繁的建立连接,关闭连接消耗性能。一般浏览器都支持 keepalive,如果这里不勾选,压测的部分性能会消耗在建立,关闭连接上,导致压测的数据不准。

配置断言

JMeter 断言常用有两种,一种是响应断言 ,一种是响应时间断言,如果响应内容不满足断言的配置,则认为这次的请求是失败的。

  • 响应断言:判断响应内容是否包含指定的字符信息,用于判断 api 接口返回内容是否正确
  • 响应时间断言:判断响应时间,是否超过预期的时间,用于判断 api 接口返回时间是否超过预期
    断言添加方式:右击测试计划的 http 请求,选择添加 --> 断言 -->加响应断言断言持续时间

配置响应断言

接口正常返回 code 值为 200 ,如果返回 code 不是 200 ,表示接口异常。
在这里插入图片描述
在这里插入图片描述

配置断言响应时间

设置请求接口时间超3秒,则认为请求失败。

配置结果监听

配置监听器:监听压测结果(聚合报告和汇总结果很类似,看一个就行)

  • 1.聚合报告:查询结果信息聚合汇总,例如样本,平均值,吞吐量,最大值,最小值等
  • 2.察看结果树:记录每一次压测请求
  • 3.图像结果:分析了所请求的平均值,终止,偏离值和吞吐量之间关系(一般)
  • 4.汇总结果:汇总压测结果
  • 5.汇总图:将压测结果以图像形式展示

上面5点,12两点重要;后面三个都在 添加 —> 监听器下面

在这里插入图片描述

压测报告

接口准备

@RestController
@RequestMapping("/jMeter")
public class JMeterController {@GetMapping("/test")public Result<String> testJMeter() {return new Result<>("200", "测试JMeter!");}
}

聚合报告

在这里插入图片描述

  • 样本(sample):发送请求的总样本数量
  • 响应时间[单位 ms]
    • 平均值(average):平均的响应时间
    • 中位数(median):中位数的响应时间,50%请求的响应时间
    • 90% 百分位(90% line) :90% 请求的响应时间,意思是90%的请求是<=3ms返回
    • 95% 百分位类似
    • 最小值(min):请求返回的最小时间,其中一个用时最少的请求
    • 最大值(max):请求返回的最大时间,其中一个用时最大的请求
    • 异常(error):出现错误的百分比,错误率 = 错误请求的数量/请求的总数
    • 吞吐量TPS(throughout) :吞吐能力
    • Received kb/sec :每秒从服务器端接收到的数据量
    • Sent kb/sec :每秒从客户端发送请求的数据量

察看结果树

在这里插入图片描述

其它

其它的意义不大,在此略过

线程组配置详解

线程数

用来发送http请求的线程的数量

  • 线程组常用来模拟一组用户访问系统资源(API接口)
  • 假如客户机没有足够的能力来模拟较重的负载,可以使用JMeter的分布式测试功能 ,通过一个JMeter的Master来远程控制多个JMeter的Slave完成测试

Ramp-Up

建立全部线程耗时
Ramp-Up (in-seconds) 代表隔多长时间执行,默认是0,0代表同时并发。

bug

在这里插入图片描述
原因是使用的是 spring boot 3.0.x 版本,但 jdk 版本使用的是 8 ,修改 jdk 版本至 17,问题得以解决
在这里插入图片描述

结束

至此 JMeter 压测使用就结束了,如有疑问,欢迎评论区留言。

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

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

相关文章

C 练习实例10 打印楼梯,同时在楼梯上方打印两个笑脸。

题目&#xff1a;打印楼梯&#xff0c;同时在楼梯上方打印两个笑脸。 程序分析&#xff1a;用 ASCII 1 来输出笑脸&#xff1b;用i控制行&#xff0c;j来控制列&#xff0c;j根据i的变化来控制输出黑方格的个数。 如果出现乱码情况请参考【C 练习实例7】的解决方法。 实例 …

第四届辽宁省大学生程序设计竞赛(正式赛)(12/13)

AC情况 赛中通过赛后通过暂未通过A√B√C√D○E○F√G√H√I○J√K—L√M√ 整体体验 easy&#xff1a;ABFHL mid&#xff1a;MJGC hard&#xff1a;IDKE 心得 感觉出了一堆典题&#xff0c;少数题还有些意思&#xff0c;E题确实神仙 题解 A. 欢迎来到辽宁省赛&#x…

iphone15 nplayer播放本地电影投屏天猫魔盒(电视)卡顿解决方案

文章目录 投屏环境现象写在前面 解决方案所需投屏app安装方法试用结果如果文章对您有用&#xff0c;欢迎收藏或关注&#xff01; iphone15 nplayer播放本地电影投屏天猫魔盒(电视)卡顿解决方案 投屏环境 全千兆wifi6局域网 1000兆电信宽带 天锚魔盒4Pro 8G&#xff08;M19&…

《研发效能(DevOps)工程师》课程简介(四)丨IDCF

由国家工业和信息化部教育与考试中心颁发的职业技术证书&#xff0c;也是国内首个研发效能&#xff08;DevOps&#xff09;职业技术认证&#xff0c;内涵1000页学习教材2000分钟的课程内容讲解460多个技术知识点300多道练习题。涵盖【组织与协作】、【产品设计与运营】、【开发…

YOLOv8-Seg改进:动态蛇形卷积(Dynamic Snake Convolution) | ICCV2023

🚀🚀🚀本文改进:动态蛇形卷积(Dynamic Snake Convolution),增强微小特征提取能力,引入到YOLOv8-Seg,与C2f结合实现二次创新 🚀🚀🚀Dynamic Snake Convolution亲测在番薯破损分割任务中,mask mAP@0.5 从原始的0.625提升至0.645 🚀🚀🚀YOLOv8-seg创新专…

namespace

1.namespace技术 namespace是Linux内核的一组特性&#xff0c;支持对内核资源进行分区隔离&#xff0c;让一组进程只能看到一组资源&#xff0c;而另一组进程只能看到另一组不同的资源。换句话说&#xff0c;namespace的关键特性是进程隔离。在运行许多不同服务的服务器上&…

2023.11.4 Idea 配置国内 Maven 源

目录 配置国内 Maven 源 重新下载 jar 包 配置国内 Maven 源 <mirror><id>alimaven</id><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/groups/public/</url><mirrorOf>central</mirrorOf> …

chrome 扩展 popup 弹窗的使用

popup的基本使用方法 popup介绍 popup 是点击 browser_action 或者 page_action图标时打开的一个小窗口网页&#xff0c;焦点离开网页就立即关闭&#xff0c;一般用来做一些临时性的交互。 popup配置 V3版本中&#xff08;V2版本是在 browser_action 中 &#xff09;&#x…

台灯选用什么类型好?双十一值得入手的护眼台灯推荐

如何给孩子挑选一盏能够护眼的台灯一直是许多家长都为之头痛的一大难题&#xff0c;主要是如今市面上的台灯实在太多了&#xff0c;而且迭代速度非常快&#xff0c;再加上这些产品中还混杂了许多不专业品牌、网红产品和低价劣质产品等等&#xff0c;想要挑选到一款好的台灯确实…

python把Word题库转成Excle题库

又到了一年一度的背题时刻&#xff0c;但是收到的题库是Word版的&#xff0c;页数特别多 话不多说&#xff0c;上代码&#xff0c;有图有真相&#xff0c;代码里面备注的很详细 # 导入所需库 import csv import os import refrom docx import Document from win32com import c…

电子敲木鱼小程序源码系统 支持广告视频流量主 带完整搭建教程

大家好啊&#xff01;好久不见。今天罗峰来给大家分享一款电子敲木鱼小程序源码系统。相信大家都听说这个电子敲木鱼小程序&#xff0c;是当代年轻人缓解压力的一款小程序。今天罗峰就来给大家介绍一下他的功能&#xff0c;这款小程序自带广告视频流量&#xff0c;帮你轻松赚钱…

皮肤病辅助诊断软件,基于Android编写

1.系统介绍 编写的皮肤病辅助诊断软件&#xff0c;包括皮肤病识别、皮肤病区域分割、皮肤病信息介绍、识别历史记录查询、简单图像处理操作以及本机信息查询等功能 2.登录界面 运行之后首先显示登录界面 3.注册界面 注册一个账号 4.主界面 输入用户名密码点击登录按钮…

基于SpringAOP实现自定义接口权限控制

文章目录 一、接口鉴权方案分析1、接口鉴权方案2、角色分配权限树 二、编码实战1、定义权限树与常用方法2、自定义AOP注解3、AOP切面类&#xff08;也可以用拦截器实现&#xff09;4、测试一下 一、接口鉴权方案分析 1、接口鉴权方案 目前大部分接口鉴权方案&#xff0c;一般…

中文sd:SkyPaint-AI-Diffusion

https://huggingface.co/SkyworkAIGC/SkyPainthttps://huggingface.co/SkyworkAIGC/SkyPainthttps://github.com/SkyWorkAIGC/SkyPaint-AI-Diffusionhttps://github.com/SkyWorkAIGC/SkyPaint-AI-Diffusion从model_index.json看&#xff0c;应该算是标准的sd1.5架构了。 {&quo…

【Head First 设计模式】-- 观察者模式

背景 客户有一个WeatherData对象&#xff0c;负责追踪温度、湿度和气压等数据。现在客户给我们提了个需求&#xff0c;让我们利用WeatherData对象取得数据&#xff0c;并更新三个布告板&#xff1a;目前状况、气象统计和天气预报。 WeatherData对象提供了4个接口&#xff1a; …

linux系统SQL server数据库定时收缩

问题现象 出现下图问题&#xff0c;导致连接该数据库的程序不能正常启动 解决办法 定时收缩数据库 数据库定时收缩脚本 需要三个脚本文件 linux_sqlcmd_timing_task_shrink.sh&#xff1a;主脚本文件 # 设置数据库名称、用户名、密码等信息 # db_name"volador"…

Elasticsearch:使用你的 RAG 来进行聊天

什么是人工智能中的检索增强生成&#xff08;RAG&#xff09;&#xff1f; 检索增强生成 (RAG)&#xff0c;与你的文档聊天的超级英雄&#xff0c;架起信息检索和文本生成世界的桥梁&#xff01; 这就像福尔摩斯和莎士比亚联手解决需要大量知识的复杂任务。 RAG 突然介入&…

使用Python自动修改电脑的静态IP地址

目录 一、引言 二、实现思路 三、详细步骤 四、Python代码 五、注意事项 六、适用性和局限性 七、总结 一、引言 在网络应用中&#xff0c;有时我们需要频繁更改电脑的静态IP地址。例如&#xff0c;当我们在不同网络环境&#xff08;家庭、办公室&#xff09;中使用电脑…

洗衣洗鞋柜洗衣洗鞋小程序

支持&#xff1a;一键投递、上门取衣、自主送店、多种支付方式 TEL: 17638103951(同V) -----------------用户下单-------------- -------------------------多种支付和投递方式------------------------- -----------------商家取鞋--------------

C++前缀和算法的应用:最大化城市的最小供电站数目

本文涉及的基础知识点 C算法&#xff1a;前缀和、前缀乘积、前缀异或的原理、源码及测试用例 包括课程视频 二分法 题目 给你一个下标从 0 开始长度为 n 的整数数组 stations &#xff0c;其中 stations[i] 表示第 i 座城市的供电站数目。 每个供电站可以在一定 范围 内给所…