jmeter 压测常用静默参数解释应用

简介:

JMeter静默压测(即无界面压测)是一种常用的性能测试方法,用于模拟多个用户同时访问系统并测量系统的响应时间和吞吐量等关键性能指标。在JMeter静默压测中,常用的压测参数及其解释如下:
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

一、基本压测参数

  • 线程数(Threads):
    定义:并发用户的数量,即模拟同时访问系统的用户数量。
    解释:线程数越多,表示同时访问系统的用户越多,系统的负载也就越大。
  • Ramp-Up Period:
    定义:线程启动的时间间隔,即所有线程在多少秒内全部启动。
    解释:如果设置为1秒,则表示所有线程在1秒内依次启动;如果设置为0,则表示所有线程同时启动。这个参数的设置会影响压测的平滑性,避免瞬间产生大量并发请求。
  • 循环次数(Loop Count):
    定义:每个线程发送请求的次数。
    解释:如果设置为一个具体的数字,则表示每个线程发送指定次数的请求后停止;如果设置为“永远”,则表示线程会一直发送请求直到压测结束。
  • 调度器(Scheduler):
    定义:用于设置压测的启动时间、结束时间、持续时间和启动延迟时间等参数。
    解释:通过调度器可以更精确地控制压测的开始和结束时间,以及压测的持续时间。

二、性能衡量指标

  • Samples:
    定义:在压测过程中发出的请求总数。
    解释:这个指标反映了压测期间系统接收到的请求数量。
  • Average:
    定义:平均响应时间,即服务器处理一个请求所需的平均时间(单位:毫秒)。
    解释:这个指标反映了系统的平均响应速度,是评估系统性能的重要指标之一。
  • Median:
    定义:响应时间的中位数,即所有请求的响应时间排序后位于中间的值。
    解释:这个指标提供了响应时间的分布情况,有助于了解大多数请求的响应时间。
  • 90% Line、95% Line、99% Line:
    定义:分别表示90%、95%、99%的用户请求响应时间不超过某个值。
    解释:这些指标有助于了解系统在不同百分位下的响应时间,从而评估系统的稳定性和可靠性。
  • Min:
    定义:最小响应时间,即所有请求中响应时间最短的那个值。
    解释:这个指标反映了系统在最佳情况下的响应速度。
  • Max:
    定义:最大响应时间,即所有请求中响应时间最长的那个值。
    解释:这个指标反映了系统在最坏情况下的响应速度,有助于发现系统的瓶颈和潜在问题。
  • Error%:
    定义:错误率,即测试过程中出现的错误请求数量占请求总数的百分比。
    解释:这个指标反映了系统的稳定性和准确性,是评估系统性能的重要指标之一。
  • Throughput(TPS):
    定义:吞吐量,即服务器每秒处理的请求数。
    解释:这个指标反映了系统的处理能力,是评估系统性能的关键指标之一。吞吐量越高,表示系统的处理能力越强。

三、其他参数

  • 参数化:
    定义:将请求中的某些参数设置为变量,以便在压测过程中动态生成不同的请求。
    解释:参数化可以模拟真实用户的行为,提高压测的准确性和可信度。
  • 断言:
  • 定义:在请求中添加条件判断,用于验证服务器返回的结果是否符合预期。
    解释:断言可以帮助发现系统中的错误和异常,提高压测的有效性。
  • 监听器:
    定义:用于收集和展示压测过程中的各种性能数据。
    解释:监听器可以实时显示系统的响应时间、吞吐量等关键指标,有助于及时发现和解决性能问题。
  • 综上所述,JMeter静默压测中的常用压测参数包括线程数、Ramp-Up Period、循环次数、调度器以及性能衡量指标如Samples、Average、Median、90% Line、95% Line、99% Line、Min、Max、Error%和Throughput等。这些参数共同构成了JMeter压测的核心内容,有助于全面评估系统的性能表现。
    在这里插入图片描述
jmeter.bat(Windows)/jmeter.sh(Linux) -n -t test-file [-p property-file] [-l results-file] [-j log-file] -e -o [Path to output folder]  -Jthread number-name
eg:${JMETER_HOME}/bin/jmeter -n -t ${jmx_file} -l ${jtl_name}   -e -o ${report_path_name} -Jthread=${num}
  • -n: 指定以非GUI(图形用户界面)模式运行JMeter。这意味着JMeter将在命令行中执行测试计划,而不会打开图形界面。
  • -t test-file: 指定要运行的测试文件(.jmx文件)。test-file是一个动态参数,需要替换为实际的.jmx文件路径。这个文件包含了测试计划的配置和脚本。
    动态值:您需要将test-file替换为包含.jmx文件的实际路径,例如-t /path/to/your/testplan.jmx。
  • [-p property-file]: 可选参数,指定属性文件,用于加载JMeter的配置。property-file是一个动态参数,需要替换为实际的属性文件路径。属性文件可以包含自定义的配置参数。
  • 动态值:如果需要使用自定义属性文件,请将property-file替换为属性文件的实际路径,例如-p /path/to/your/jmeter.properties。如果不使用此参数,JMeter将使用默认的配置。
  • [-l results-file]: 可选参数,指定结果文件的路径和名称,用于保存测试结果。results-file是一个动态参数,需要替换为实际的结果文件路径。测试结束后,JMeter将结果保存为.jtl格式的文件。
  • 动态值:您需要将results-file替换为希望保存测试结果的实际路径和文件名,例如-l /path/to/your/results.jtl。
  • [-j log-file]: 可选参数,指定日志文件的路径和名称,用于记录JMeter的日志信息。log-file是一个动态参数,需要替换为实际的日志文件路径。
    动态值:您需要将log-file替换为希望保存日志信息的实际路径和文件名,例如-j /path/to/your/jmeter.log。
  • -e -o [Path to output folder]: 这组参数用于生成HTML格式的测试结果报告。-e表示生成报告,-o后面跟的是报告的输出目录。[Path to output folder]是一个动态参数,需要替换为实际的输出目录路径。这个目录将包含生成的HTML报告文件。
  • -Jthread :通过自定义函数P功能定义的动态线程数量

动态值:您需要将[Path to output folder]替换为希望保存报告的实际目录路径,例如-o /path/to/your/report-folder。请注意,指定的输出文件夹必须存在且为空文件夹,因为JMeter会在该文件夹中生成报告文件。

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

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

相关文章

自动驾驶目标检测融合全貌

1、early fusion 早期融合,特点用到几何空间转换3d到2d或者2d到3d的转换,用像素找点云或者用点云找像素。 2、deep fusion 深度融合,也是特征级别融合,也叫多模态融合,如bevfusion范式 3、late fusion 晚融合&#x…

OpenAI Whisper 语音识别 模型部署及接口封装

环境配置: 一、安装依赖: pip install -U openai-whisper 或者,以下命令会从这个存储库拉取并安装最新的提交,以及其Python依赖项: pip install githttps://github.com/openai/whisper.git 二、安装ffmpeg: cd …

⽂件操作详解

⽬录 一 文件操作的引入 1 为什么使⽤⽂件? 2 什么是⽂件? 3 文件分类(1 从⽂件功能的⻆度来分类:程序⽂件/数据⽂件 2根据数据的组织形式:为⽂本⽂件/⼆进制⽂件) 二 ⽂件的打开和关闭 1 …

gitee:解决vs文件权限被拒问题

报错问题 分析原因 git上传要忽略vs文件, Git因致命错误而失败。权限被拒绝 无法处理的路径。 解决方法 1、项目根目录下->右击空白->Open Git Bash here 2、 创建.gitignore文件 命令 touch .gitignore 3、 文件开头输入 .vs保存 参考地址 VS2017 Git fa…

【03】Selenium+Python 八种定位元素方法

操作元素,需要先查找定位到对应的元素。 查找单个元素:driver.find_element() 返回是一个web element 对象 查找多个元素:driver.find_elements() 返回是一个list对象 By 是 Selenium 中一个非常重要的类,用于定位网页元素。 使…

【linux学习指南】详解Linux进程信号保存

文章目录 📝保存信号🌠 信号其他相关常⻅概念🌉在内核中的表⽰ 🌠 sigset_t🌠信号集操作函数🌉sigprocmask🌉sigpending 🚩总结 📝保存信号 🌠 信号其他相关常…

Java安全—原生反序列化重写方法链条分析触发类

前言 在Java安全中反序列化是一个非常重要点,有原生态的反序列化,还有一些特定漏洞情况下的。今天主要讲一下原生态的反序列化,这部分内容对于没Java基础的来说可能有点难,包括我。 序列化与反序列化 序列化:将内存…

搭建一个基于Web的文档管理系统,用于存储、共享和协作编辑文档

搭建一个基于Web的文档管理系统,用于存储、共享和协作编辑文档 本项目采用以下架构: NFS服务器: 负责存储文档资料。Web服务器: 负责提供文档访问和编辑功能。SELinux: 负责权限控制,确保文档安全。Git服务器: 负责存储文档版本历史&#x…

智能堆叠,集群和IRF

堆叠和IRF其实可以近似看成同一种技术,只是华三叫IRF,华为叫智能堆叠 智能堆叠(iStack):支持堆叠特性的交换机通过堆叠线缆连接在一起,从逻辑上变成一台交换设备,作为一个整体参与数据转发&…

go使用mysql实现增删改查操作

1、安装MySQL驱动 go get -u github.com/go-sql-driver/mysql2、go连接MySQL import ("database/sql""log"_ "github.com/go-sql-driver/mysql" // 导入 mysql 驱动 )type Users struct {ID intName stringEmail string }var db *sql.DBfu…

springboot中使用mongodb完成评论功能

pom文件中引入 <!-- mongodb --> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-mongodb</artifactId> </dependency> yml中配置连接 data:mongodb:uri: mongodb://admin:1234561…

layui-vue第三方库表格列事件怎么写

插槽写入列点击事件 <div class"le-table-box" ref"TableBoxRef" :style"{ height: ShowPage ? calc(100% - 60px) : 100% }"><lay-table row-double"dbRowClick" :columns"TableColumn" :data-source"Table…

[在线实验]-Redis Docker镜像的下载与部署

镜像下载 dockerredis镜像资源-CSDN文库 加载镜像 使用以下命令从redis.tar文件中加载Docker镜像 docker load --input redis.tar 创建映射目录 为了确保Redis的数据能够持久化&#xff0c;我们需要创建一个本地目录来存储这些数据 mkdir -p datasource/docker/redis 运…

Flink CDC 使用实践以及遇到的问题

背景 最近公司在做一些业务上的架构调整&#xff0c;有一部分是数据从mysql采集到Starrocks&#xff0c;之前的一套方法是走 debezium 到 puslar 到 starrocks,这一套下来比较需要配置很多东西&#xff0c;而且出现问题以后&#xff0c;需要修改很多配置&#xff0c;而且现阶段…

配置idea环境进行scala编程

这里用的jdk是jdk-8u161,scala版本是2.12.0 在d盘新建一个本地仓库用来存放下载的maven包&#xff0c;在里面创建如下两个文件 更改settings文件为下面的样子 点击左下角的设置&#xff0c;更改maven本地仓库的位置&#xff08;默认在c盘用户目录下的.m2文件中&#xff0c;更改…

0017. shell命令--tac

目录 17. shell命令--tac 功能说明 语法格式 选项说明 实践操作 注意事项 17. shell命令--tac 功能说明 Linux 的 tac 命令用于按行反向输出文件内容&#xff0c;与 cat 命令的输出顺序相反。非常有趣&#xff0c;好记。也就是说&#xff0c;当我们使用tac命令查看文件内…

mimic插件使用

最近搞机械臂的末端夹具&#xff0c;本来想用吸盘的插件的&#xff0c;不知道为什么吸盘吸不起来可乐瓶&#xff0c;后面就换成夹爪了。 因为原厂的urdf文件中提供夹爪是用mimic标签控制剩下的5个joint关节的&#xff0c;网上参考的资料太少了&#xff0c;也是废了好多力 气&am…

Spring boot之BeanDefinition介绍

在spring框架中IOC容器进行bean的创建和管理。Bean的创建是一个比较复杂的过程&#xff0c;它并不像我们创建对象一样只是直接new一下就行&#xff0c;虽然有些bean确实就是New一下。但在Spring中可以通过一些途径对bean进行增强扩展。在这个过程中&#xff0c;BeanDefinition作…

redis基础spark操作redis

Redis内存淘汰策略 将Redis用作缓存时&#xff0c;如果内存空间用满&#xff0c;就会自动驱逐老的数据。 为什么要使用内存淘汰策略呢&#xff1f; 当海量数据涌入redis&#xff0c;导致redis装不下了咋办&#xff0c;我们需要根据redis的内存淘汰策略&#xff0c;淘汰一些不那…

【MyBatis】验证多级缓存及 Cache Aside 模式的应用

文章目录 前言1. 多级缓存的概念1.1 CPU 多级缓存1.2 MyBatis 多级缓存 2. MyBatis 本地缓存3. MyBatis 全局缓存3.1 MyBatis 全局缓存过期算法3.2 CacheAside 模式 后记MyBatis 提供了缓存切口&#xff0c; 采用 Redis 会引入什么问题&#xff1f;万一遇到需强一致场景&#x…