测试工具之压测工具JMeter(一)

大模型压测方法 *同样的时间能吐的字越多,单个 token 的成本越低。更低的价格和更高的服务质量,二者常常不可得兼。选型LLM 性能压测工具经过调研,选择 推理引擎 SGLang 自带的 sglang.bench_serving 基准测试工具,以及 Locust 和 EvalScope 两款成熟的性能测试工具,进行全面的性能评估。它的最大优势是,用户可以用简单的 Python 代码来定义测试,灵活且易于使用,并且提供Web UI界面,在测试过程中,可以实时查看吞吐量、响应时间和错误情况,或者将数据导出以供后续分析。 阅读详情

有时候我们接到的需求是秒杀或者抽奖类的功能开发,这时候可能会在某一时间点大量请求并发,我们手工自测很难发现一些高并发场景下的问题,这时候可以借助一些压测工具帮我们模拟出大量请求来测试我们的接口是否能满足业务要求。JMeter是Apache 旗下的开源软件。

JMeter支持测试的应用/服务/协议有很多例如:Web服务 (HTTP, HTTPS )、 Webservices、Database via JDBC、FTP、LDAP、Mail - SMTP(S), POP3(S) and IMAP(S)、Native commands or shell scripts、TCP、Java Objects等等。

1.JMeter下载

访问Apache官方网站https://jmeter.apache.org/download_jmeter.cgi

点击apache-jmeter-5.5.zip即可开始下载

图片

下载完成后解压apache-jmeter-5.5.zip

图片

2.使用

进入bin目录点击jmeter.bat文件即可打开主jmeter界面

图片

2.1切换中文

Options->Choose Language->Chinese(Simplified)

2.2创建测试计划

如下界面中可设置激活名称、注释等信息。一个计划中可创建多个线程组

图片

2.2.1创建线程组

TestPlan->添加->线程(用户)->线程组

图片

线程组可设置名称和注释,一个线程相当于一个用户请求。比如线程数填100,Ramp-up时间填1,循环次数填1,就表示在1秒内发送100次请求,执行一次。

图片

2.2.2创建HTTP请求

在线程组上点击右键,添加->取样器->HTTP请求

图片

Web服务器:设置请求的协议,默认是http,ip填写测试服务器地址,端口号是是测试应用的端口。

HTTP请求:选择接口支持的请求方法,路径为url的请求路径(GET请求的参数可以直接带在路径上或在下面的参数配置表格中通过点击“添加”按钮来添加请求参数)

图片

2.2.3创建察看结果树

在HTTP请求上点击右键,添加->监听器->察看结果树

图片

2.3.4添加聚合报告

在HTTP请求上点击右键,添加->监听器->聚合报告。

图片

说明:

TestPlan:测试计划,相当于一个工程,

Thread Group:线程组,相当于模拟的请求数,一个线程相当于一个用户请求

察看结果树:监听发送请求时各个请求的状态

聚合报告:汇总一次测试的数据

2.3.5 开始测试

点击界面工具栏的绿色三角按钮

2.3.6查看报告

选择其中的请求可以在右边看到这个请求地址、请求时间、请求数据长度等详细信息

图片

选择聚合报告可以查看本轮测试的数据报告

图片

说明:

样本:请求的次数(线程数*循环次数) 
平均值:响应时间的平均用时,单位是毫秒
中位数:响应时间的中位数,单位是毫秒
90%百分位:90%的响应时间小于该数值,单位是毫秒
95%百分位:含义和90%类似
99%百分位:含义和90%类似
最小值:该次测试最小响应时间,单位是毫秒
最大值:该次测试最大响应时间,单位是毫秒
异常%:该次测试出现异常的请求比例
吞吐量:等同QPS(测试的接口处理请求的能力)
接收KB/Sec:响应数据的接收速率
发送KB/Sec:请求数据的发送速率

jmeter压测、websocket压测实例 Jmeter是apache公司基于java开发的一款开源压力测试工具,体积小,功能全,使用方便,是一个比较轻量级的测试工具,使用起来非常简单。因为jmeter是java开发的,所以运行的时候必须先要安装jdk才可以。jmeter是免安装的,拿到安装包之后直接解压就可以使用,同时它在 linux/windows/macos上都可以使用。jmeter可以做接口测试和压力测试。 阅读详情

相关推荐

Jmeter压测报告

账户分析压测报告 一、测试内容 本次测试是针对账户分析进行的压力测试,在账户分析查询接口中,只对用户资产查询接口进行压力测试,其中不包含用户签名校验功能。 二、测试方法 本次采用apache的开源测试工具jmeter,采用本地动态拼装请求数据并通过http协议GET方式发送每日盈亏查询请求。并采用1000个用户账号测试访问情况。...

qq_31108731的博客 6627

10大主流压力测试工具推荐

在移动应用和Web服务正式发布之前,除了进行必要的功能测试和安全测试,为了保证互联网产品的服务交付质量,往往还需要做压力/负载/性能测试。然而很多传统企业在试水互联网+的过程中,往往由于资源或产品迭代速度等原因忽视了这一块工作,导致新产品上线之后频繁出现卡顿等严重影响用户体验的问题。那么互联网产品为什么要进行压力/负载/性能测试,又有哪些工具帮我们实现呢,本文将为您细说端详。 压力/负载/性能测试之异同 在产品研发过程中,常常会混淆压力/负载/性能测试这三者之间的区别,这三种测试到底有什么不同呢? ..

firstcode666的博客 2万+

jmeter接口压测

接口压测

dailittledragon的博客 1198

10大主流压力测试工具

市面上流行的压力/负载/性能测试工具多是来自国外,近年来国内的性能测试工具也如雨后春笋崛起。同时由于开发的目的和侧重点不同,其功能也有很大差异,下面就为您简单介绍10款目前最常见的测试产品。 1、kylinTOP测试与监控平台(商用版) kylinTOP测试与监控平台是一款B/S架构的跨平台的集性能测试、自动化测试、业务监控于一体的测试平台,它是深圳是奇林软件有限公司旗下的一款产品,该工具开放10...

中国软件测试质量协会 4772

【好物推荐】性能测试之压力测试,常用的好用的压测工具(Jmeter )

【项目实战】如何使用Jmeter来压测接口?

奶爸的编程之路,也就一周冷个三天 3181

BIDS数据存储格式介绍与dcm2bids安装与使用

BIDS格式&dcm2bids安装与使用

machinelearning_er的博客 7317

【测试工具】通过Jmeter压测存储过程

d. Database URL: jdbc:oracle:thin:@{ip}/{oracle服务名},其中{ip}是数据库服务器ip,{oracle服务名}是TNS中 的Service_Name,类似orcl这种。b. Variable Name for created pool,随便起一个,不过需要跟后续步骤的配置一致,建议就叫oracle。c. Query: 如图,写存储过程调用,照图上格式写,参数用?其他配置如查询结果树,聚合报告,TPS,PerfMon监控等,同基础Jmeter配置。

smile_sundays的博客 7948

《YOLOv8-seg改进》专栏指导书册 &手把手创新教程

学姐带你学习YOLOv8,从入门到创新,轻轻松松搞定科研;1)手把手教你如何训练YOLOv8-seg;2)模型创新,提升分割性能;3)独家自研模块助力分割;

会AI的学姐 3813

Jmeter压测思路+实操+报告分析

RBI性能测试方法,快速瓶颈识别法。 RBI强调了80%的性能问题可以通过吞吐量测试来发现,其他20%的性能问题可以通过引入并发用户数等更复杂的场景来发现。 执行方案 核心思路: 性能测试中不只关注并发数,尤其是单接口性能测试的时候,更多关注吞吐量、响应时间等指标来评估服务端性能。验证服务端最高每秒能正确处理的请求数,以及请求的响应延时情况。 首先明确下并发的概念。在性能测试中并发可以理解为同一时...

hyb648115428的博客 5568

全志V3S嵌入式驱动开发(编译器升级到7.5)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 看过我们文章的朋友都知道,前面为了做v3s的驱动,对linux kernel进行了两次升级。第一次升级时从4.10.y升级到4.14.y,另外一次升级是从4.14.y升级到5.2.y。这中间最主要的原因,就是为了驱动适配的需要,更新的内核可以对硬件驱动有更好的支持,架构也更合理。 如果说内核升级尚且可以理解,那为什么要对编译器升级呢?这里面,最重要的一点就是语言的升

嵌入式-老费,一个分享专业嵌入式知识的blog 1166

Linux下的隐藏技术(文件隐藏、进程隐藏、端口隐藏、权限隐藏、命令隐藏)

这种技巧是关键记录删除,或者我们可以暴力点,比如前150行是用户的正常操作记录,150以后是攻击者操作记录。在Linux中,使用chattr命令来防止root和其他管理用户误删除和修改重要文件及目录,此权限用ls -l是查看不出来的,从而达到隐藏权限的目的。上面的命令会临时禁用历史功能,这意味着在这命令之后你执行的所有操作都不会记录到历史中,然而这个命令之前的所有东西都会原样记录在历史列表中。这种情况下我们怎么办?在shell中执行的命令,不希望被记录在命令行历史中,如何在linux中开启无痕操作模式呢?

墨痕诉清风的博客 746

如何使用jmeter进行压测

一款工具,功能往往是很多的,细枝末节的地方也很多,实际的测试工作中,绝大多数场景会用到的也就是一些核心功能,根本不需要我们事无巨细的去掌握工具的所有功能。所以本文将用带价最小的方式讲解如何快速上手使用jmeter来进行压测。JMeter,一款接口测试工具,是Java程序,需要JDK环境,建议使用JDK8或者JDK11。启动:安装路径/bin/jmeter.bat(.sh)

okcross0的博客 1万+

10、智慧变电站 - 加载vue大屏元素(整体效果)

这一篇文章非常简单,但是也非常出效果阅读前面几篇文章,都可以看到有顶部、左侧、右侧的面板,主要我不会录gif图片,大屏元素面板还有一些动态加载的效果。 vue的transition标签 Vue 提供了 transition 的封装组件,可以给任何元素和组件添加进入/离开过渡;在进入/离开的过渡中,会有 6 个 class 切换:v-enter 、v-enter-active 、v-enter-to 、v-leave 、v-leave-active 、v-leave-to。我们正好使用这个特性来达到面板进入

github_39988036的博客 1040

RocketMQ - 性能压测:工具选型与指标分析(JMeter/LoadRunner)

RocketMQ性能压测指南 摘要 本文介绍了如何使用JMeter和LoadRunner对RocketMQ消息中间件进行专业性能压测。文章首先通过电商平台故障案例说明压测的重要性,详细对比了JMeter、LoadRunner和自研脚本三种压测工具的优缺点,并推荐JMeter作为首选工具。 主要内容包括: 两种JMeter压测方案:JSR223 Sampler(Groovy)和Java Request Sampler 详细代码示例展示如何实现RocketMQ Producer压测脚本 关键配置建议:线程组设置

千淘万漉虽辛苦,吹尽狂沙始到金 2万+

LLM评测框架Ragas:测试RAG的性能出现TimeoutError()的解决办法(Ragas+langchain+ollama)

无奈之下,自己找到了一个解决办法,在ragas支持的llm类库中加了一个如下的类,支持ollama、langchian_ollama使用ragas测试报错的问题。可以将如上的库放到你的ragas的系统库的llms目录下,然后修改__init__.py如下。最近用ragas测试rag的性能,发现老出现TimeoutError()的错误。这是一个临时的解决办法,具体等待官方给出最终的解决方案。后来发现官方也没有尽快支持的计划。然后就可以用如下代码进行一些验证。

Criss@陈磊 666

30、优化算法在芯片布局与药物设计中的应用

本文探讨了优化算法在芯片布局与药物设计中的关键应用。针对芯片布局问题,提出了一种改进的粒子群优化(PSO)方法,通过引入转向因子、重叠检测与消除机制以及优先处理约束模块,有效优化了芯片面积、线长和运行时间,并在有无布局约束条件下均优于传统方法。在药物设计领域,介绍了基于蚁群优化(ACO)的PLANTS算法,用于解决蛋白质-配体对接问题,通过离散化连续变量、信息素更新、局部搜索和聚类处理,提高了构象预测的准确性。文章还总结了两种算法的操作流程,并展望了未来在多约束集成与算法融合方向的发展潜力。

egg99的博客 94

JMeter 压测脚本编写教程详解

JMeter 是一个功能强大的性能测试工具,通过线程组、取样器、逻辑控制器、定时器、断言等组件可以编写复杂的压测脚本。JMeter 是一个开源的负载测试工具,主要用于对 Web 应用、REST API 等系统的性能进行压测。通过编写 JMeter 脚本,可以模拟多用户请求,以测试系统的稳定性和性能。:Sampler 是执行请求的组件,比如 HTTP 请求、JDBC 请求、FTP 请求等。在实际测试中,经常需要参数化请求,使每个虚拟用户发送不同的数据。:设置请求之间的延时,比如恒定时间延时、随机延时等。

zx893404890的博客 2515

工业缺陷检测:基于深度学习的表面缺陷分类

工业缺陷检测:基于深度学习的表面缺陷分类 ,人工智能,计算机视觉,大模型,AI,在现代工业生产中,产品质量直接影响企业的竞争力和声誉,工业缺陷检测作为质量把控的重要环节,其技术的发展至关重要。传统的人工检测方式效率低、成本高且易受主观因素影响,难以满足大规模、高精度的生产需求。随着深度学习技术的蓬勃发展,基于深度学习的工业表面缺陷分类方法凭借强大的特征提取和模式识别能力,成为解决工业缺陷检测难题的有效途径。本文将深入探讨基于深度学习的工业表面缺陷分类技术,结合详细的代码示例和概念解析。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 3万+

Jmeter分布式压测

一、什么是压力测试?压力测试(StressTest),也称为强度测试、负载测试,属于性能测试的范畴。压力测试是模拟实际应用的软硬件环境及用户使用过程的系统负荷,长时间或超大负荷地运行被测软件系统,来测试被测系统的性能、可靠性、稳定性等。一定负载的情况下,长时间运行被测软件系统,称为稳定性测试;超大负荷地运行被测软件系统称为极限压力测试。普通压力测试一般是采用单台机器对目标服务器产生的压力,因为受限于CPU、内存、网络、IO等因素的影响,通常只能模拟几十到几百用户的并发访问。(1)先了解几个专业术语!...

主要分享测试的学习资源,帮助快速了解测试行业,帮助想转行、进阶、小白成长为高级测试工程师。 7328

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

保姆级jmeter压测计算QPS教程

最全面的jmeter使用教程,教你如何一步一步自己测压接口的QPS

qq_62775328的博客 5090

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Linux下运行Jmeter压测

1、将本地生成的jmx文件上传到服务器指定目录,如:/usr/local/apache-jmeter-3.1/jmx。3、将apache-jmeter-3.1目录放到 /usr/local/apache-jmeter-3.1下。目录:/usr/local/apache-jmeter-3.1/apache-jmeter-3.1/bin。目录:/usr/local/apache-jmeter-3.1/apache-jmeter-3.1/bin。

OKC_0_Westbrook的博客 687

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

常用压测工具对比

压测,即压力测试,是确立系统稳定性的一种测试方法,通常在系统正常运作范围之外进行,以考察其功能极限和隐患。 主要检测服务器的承受能力,包括用户承受能力(多少用户同时玩基本不影响质量)、流量承受等。 压测的目的就是通过压测(模拟真实用户的行为),测算出机器的性能(单台机器的QPS),从而推算出系统在承受指定用户数(100W)时,需要多少机器能支撑得住。

adorable_的博客 4887

Linux下运行Jmeter压测详解

本文详细介绍了在Linux服务器上安装配置JDK和JMeter进行接口压测的完整流程。主要内容包括:1)JDK安装与环境变量配置;2)JMeter安装与配置;3)单机压测操作方法;4)分布式压测配置及执行步骤。重点讲解了jmx脚本执行命令、结果查看方法,以及如何配置多台服务器进行分布式压测,包括主从机设置、脚本部署和结果收集等关键环节。最后提供了测试资源获取方式。

2301_78843735的博客 917

如何用Jmeter进行压测

一款工具,功能往往是很多的,细枝末节的地方也很多,实际的测试工作中,绝大多数场景会用到的也就是一些核心功能,根本不需要我们事无巨细的去掌握工具的所有功能。所以本文将用带价最小的方式讲解如何快速上手使用jmeter来进行压测。JMeter,一款接口测试工具,是Java程序,需要JDK环境,建议使用JDK8或者JDK11。下载地址:启动:安装路径/bin/jmeter.bat(.sh)

OKCRoss的博客 1145
上一篇: (五)springboot 配置多数据源连接mysql和hive
下一篇: HikariCP与Spring Boot的完美集成,让您的应用更高效、更可靠!
调试大师
博客等级 码龄3年 2340粉丝 61原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

调试大师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值