当前位置: 首页 > news >正文

【碎片化学习】JMeter中常用的设置优化

【碎片化学习】JMeter中常用的设置优化

JMeter.properties 配置优化

JMeter的核心配置文件jmeter.properties位于bin目录下,通过修改该文件可以调整JMeter的全局行为。

关键参数配置

  • httpclient4.time_to_live: 设置连接池中连接的最大存活时间(毫秒),默认-1(无限)。建议根据测试场景调整为合理值(如60000)。
  • httpclient4.retrycount: 请求失败后的重试次数,默认3。可调整为1以减少重复请求对测试结果的影响。
  • jmeter.save.saveservice.*: 控制结果文件的保存内容。例如jmeter.save.saveservice.response_data=true可保存响应数据,但会增加磁盘I/O。
  • summariser.interval: 控制控制台摘要输出的频率(秒),默认30。调整为10可更频繁查看测试进度。

示例配置片段

httpclient4.time_to_live=60000
httpclient4.retrycount=1
jmeter.save.saveservice.response_data=false
summariser.interval=10

JMeter.bat 启动参数优化

jmeter.bat(Windows)或jmeter.sh(Linux/Mac)是JMeter的启动脚本,可通过调整JVM参数优化性能。

关键参数

  • 堆内存设置: 修改HEAP参数,例如set HEAP=-Xms2g -Xmx4g,根据测试规模分配内存(避免OOM)。
  • 垃圾回收优化: 添加-XX:+UseG1GC启用G1垃圾回收器,减少GC停顿时间。
  • 禁用GUI模式: 非调试时添加-n参数以非GUI模式运行,减少资源消耗。

示例修改片段

set HEAP=-Xms2g -Xmx4g -XX:+UseG1GC
set JMETER_OPTS=%JMETER_OPTS% -Djava.awt.headless=true

HTTP取样器常用优化配置

HTTP取样器是性能测试的核心组件,通过以下配置可提升测试效率。

连接与超时设置

  • 实现方式(Implementation): 选择HttpClient4(默认)以获得更好的连接池管理。
  • 超时参数:
    • 连接超时(Connect Timeout): 建议设为5000毫秒。
    • 响应超时(Response Timeout): 根据业务需求设置(如10000毫秒)。

高级配置

  • 启用Keep-Alive: 勾选Use KeepAlive以复用连接,减少TCP握手开销。
  • 内容编码: 勾选Use multipart/form-data用于文件上传场景。
  • 从HTML获取资源: 在需要模拟浏览器行为时勾选Retrieve All Embedded Resources,但会增加采样器数量。

示例配置截图

  • Basic选项卡: 设置协议、域名、路径、方法(GET/POST)。
  • Advanced选项卡: 调整超时和连接池参数。

其他优化建议

  • 分布式测试: 在remote_hosts属性中配置负载生成器IP,分散压力。
  • CSV数据文件: 使用CSV Data Set Config参数化请求,避免硬编码。
  • 监听器选择: 避免使用View Results Tree等高开销监听器,改用Aggregate ReportSummary Report

通过以上配置调整,可显著提升JMeter的测试效率和结果准确性。

更多配置

其他常用的配置项见下表:

配置项配置说明影响对应的 JMeter 版本
jmeter.save.saveservice.output_format定义保存的结果文件格式。决定了结果文件的输出格式,可以是 CSV、XML 等。2.0 及以上版本
jmeter.save.saveservice.response_data是否保存响应数据。如果设置为 true,响应数据将会保存在结果文件中。2.0 及以上版本
jmeter.save.saveservice.response_time是否保存响应时间。影响结果中是否保存请求的响应时间。2.0 及以上版本
jmeter.save.saveservice.latency是否保存延迟时间。控制是否保存从请求开始到响应开始的时间。2.0 及以上版本
jmeter.save.saveservice.thread_counts是否保存线程数目。如果设置为 true,会保存每个请求的线程数目。2.0 及以上版本
jmeter.save.saveservice.successful是否保存请求成功的标志。如果设置为 true,会记录请求是否成功。2.0 及以上版本
jmeter.threads.max最大线程数目。控制测试中同时运行的最大线程数。2.0 及以上版本
jmeter.engine.remote.start启用或禁用远程启动测试。设置为 true,允许通过远程方式启动测试。2.0 及以上版本
jmeter.gui.color设置 JMeter GUI 的颜色主题。可以设置为不同的颜色方案,影响 JMeter 用户界面的外观。2.0 及以上版本
jmeter.save.saveservice.include指定保存结果时要包含哪些字段。用逗号分隔字段名称,只保存指定的字段。2.0 及以上版本
jmeter.save.saveservice.timestamp_format设置时间戳格式。用于设置结果文件中的时间戳格式,影响时间戳的显示格式。3.0 及以上版本
jmeter.reportgenerator.overall_granularity设置报告的粒度。控制报告中数据的粒度,影响结果的详细程度。3.0 及以上版本
jmeter.ssl.default.protocol设置 SSL 协议。设置默认的 SSL 协议,例如 TLSv1.2、TLSv1.3 等。3.1 及以上版本
jmeter.log_level.jmeter设置日志记录级别。可以选择不同的日志级别(例如 DEBUG、INFO、WARN 等)。2.0 及以上版本
http://www.hskmm.com/?act=detail&tid=31687

相关文章:

  • win10系统以太网未识别网络 没有有效ip配置怎么办?
  • 怎么考PostgreSQL PG中级认证证书
  • 大学本科及研究生金融专业题库数据集:109157条高质量中文金融教育题库数据,涵盖银行证券保险投资理财等全领域,支持智能教育系统与机器学习算法训练的专业数据集
  • 【比赛记录】2025CSP-S模拟赛61
  • 基于Rokid CXR-S SDK的智能AR翻译助手技术拆解与实现指南
  • VRED 2025:专业三维可视化与虚拟现实领域的高效设计工具
  • 2025年办公与商业空间软膜天花系统推荐榜:办公室/酒店/展厅/商场/汽车4S店软膜天花厂家,专注光环境与装饰一体化解决方案
  • SZMS 251009 订题赛 题解
  • Debian 12安装docker的正确方法
  • 【流量网关】k8s与apisix统一的流量入口方案(内网版)
  • 基于STM32F4系列MCU和CS5530 24位SDADC的称重传感器系统实现
  • 2025 年环保板材厂家最新推荐榜:硬包板 / 竹木纤维板等全品类 企业深度解析
  • kong 网关下集成 Consul服务注册与发现
  • cad圆滑连接两段线:blend
  • 在 gitea 服务器端查询 lfs 文件占用情况
  • HDR图像生成算法详解
  • Introduction: Why Optimization?
  • 基于MATLAB的二自由度机械臂PID控制仿真
  • Spring AOP原理
  • Ventoy引导Kali live USB持久化
  • 知识库管理工具深度测评:ONES、Confluence 等10款工具全面对比
  • 好的测试数据管理,到底要怎么做?
  • 【面试题】人工智能工程师高频面试题汇总:循环神经网络篇(题目+答案)
  • 做了个手机上的“视频播放器”,获益匪浅
  • CEF关闭流程
  • AI一周资讯 251005-251015
  • 2025 年中空百叶源头厂家最新推荐排行榜:聚焦国内优质供货商,助力客户精准选购可靠产品光能/光伏/电动/光动中空百叶厂家推荐
  • 2025年学校家具定制厂家最新权威推荐榜:全屋定制/衣柜/厨柜/酒柜/鞋柜/猫柜/酒店办公家具/电视柜/书包柜/图书架/宿舍上下床
  • iOS框架内存中占用很高的ttc文件是否正常
  • Linux配置SSH名称通信