首页主机资讯JMeter在Debian上的使用教程

JMeter在Debian上的使用教程

时间2025-11-25 21:10:04发布访客分类主机资讯浏览524
导读:在 Debian 上使用 JMeter 的完整教程 一 环境准备与安装 安装 Java(推荐 OpenJDK 11,JMeter 5.x 在 Java 8+ 均可运行) 更新索引并安装:sudo apt update &&...

在 Debian 上使用 JMeter 的完整教程

一 环境准备与安装

  • 安装 Java(推荐 OpenJDK 11,JMeter 5.x 在 Java 8+ 均可运行)
    • 更新索引并安装:sudo apt update & & sudo apt install -y openjdk-11-jdk
    • 验证版本:java -versionjavac -version
  • 安装 JMeter(两种常用方式)
    • 方式 A 仓库安装(版本可能较旧):sudo apt install -y jmeter
    • 方式 B 官方压缩包(获取最新稳定版)
      • 下载:wget https://dlcdn.apache.org//jmeter/binaries/apache-jmeter-5.4.3.tgz
      • 解压:tar -xzf apache-jmeter-5.4.3.tgz & & mv apache-jmeter-5.4.3 ~/jmeter
      • 建议将 ~/jmeter/bin 加入 PATH,便于全局执行:echo 'export PATH=$PATH:~/jmeter/bin' > > ~/.bashrc & & source ~/.bashrc
  • 验证安装:执行 jmeter -v 应输出版本信息;如需 GUI 模式,可直接运行 jmeter(需桌面环境)。

二 快速开始 非 GUI 命令行压测

  • 准备测试计划:在 JMeter GUI 中创建并保存为 test_plan.jmx(或在 Linux 下用模板创建)。
  • 非 GUI 执行与结果保存(推荐)
    • 基本命令:
      • ~/jmeter/bin/jmeter -n -t test_plan.jmx -l results.jtl
    • 常用参数
      • -n 非 GUI 模式;-t 指定脚本;-l 指定结果文件(JTL/CSV)
      • -e -o report 生成 HTML 报告(需与 -l 不同目录)
      • -r 使用 远程主机列表(在 jmeter.propertiesremote_hosts 中配置)
      • -X 测试结束后退出
  • 示例(生成报告)
    • ~/jmeter/bin/jmeter -n -t test_plan.jmx -l results.jtl -e -o report
  • 说明:非 GUI 模式资源占用更低,适合在服务器上执行压测与定时任务。

三 分布式压测 主控与代理

  • 架构说明:一台 Controller(主控机)调度多台 Agent(负载机)产生并发压力。
  • 在所有机器准备相同版本的 JavaJMeter(建议同版本,避免兼容性问题)。
  • 在每台 Agent 上启动 RMI 服务
    • 进入 JMeter 的 bin 目录:
      • ./jmeter-server
    • 若出现 java.io.FileNotFoundException: rmi_keystore.jks,在 jmeter.properties 中设置:
      • server.rmi.ssl.disable=true(取消注释并改为 true),然后重启 jmeter-server
  • 在 Controller 上配置并启动分布式测试
    • 配置 jmeter.propertiesremote_hosts
      • remote_hosts=192.168.1.11:1099,192.168.1.12:1099
    • 启动测试(指定远程代理):
      • ~/jmeter/bin/jmeter -n -t test_plan.jmx -R 192.168.1.11,192.168.1.12 -l dist_results.jtl
  • 网络与防火墙
    • 确保 Controller 与 Agents 之间 1099 端口互通(RMI 默认端口),以及可能的 4444 端口(JMeter RMI 回调端口,视配置而定)。
  • 常见问题
    • 跨平台编辑 JMX 文件时避免包含非 ASCII 中文 或特殊编码,可能导致解析异常。
    • 控制机与被控机 JMeter 大版本保持一致,避免因版本差异导致脚本不兼容。

四 与 Jenkins Ant 持续集成

  • 准备环境:安装 AntJenkins,并在 Jenkins 全局工具中配置 JAVA_HOME
  • 目录约定
    • JMeter 目录:/opt/jmeter/apache-jmeter-5.0
    • 结果目录:/var/jmeter/result
  • 编写 Ant 构建脚本 build.xml(核心片段)
    • 关键属性与任务:
      • 定义 jmeter.homejmeter.result.jtl.dirjmeter.result.html.dir
      • 使用 jmeter 任务执行脚本,输出 XML 结果
      • 使用 xslt 将 XML 转为 HTML 报告
    • 示例要点:
      • < jmeter jmeterhome="${ jmeter.home} " resultlog="${ jmeter.result.jtlName} "> ...< /jmeter>
      • 生成报告时引入 xalan*.jarserializer*.jarant-jmeter*.jar
  • Jenkins Job 配置
    • 构建步骤:执行 ant(调用上述 build.xml
    • 构建后操作:归档 JTL/HTML 报告,并可配置 定时任务邮件通知
  • 说明:通过 Ant 的 JMeter 任务与 XSLT 转换,可实现自动化执行与可视化报告输出。

五 常见问题与排查

  • Java 未安装或版本不兼容
    • 现象:jmeter 无法启动或报 Unsupported major.minor version
    • 处理:安装 OpenJDK 11(或 8),java -version 验证
  • 远程执行失败
    • 现象:Connection refused 或超时
    • 处理:检查 1099/4444 端口开放、Agent 已启动 jmeter-serverremote_hosts 配置正确
  • JMX 文件编码问题
    • 现象:Could not find the TestPlan class!
    • 处理:避免 中文或特殊编码,统一使用 UTF-8 保存
  • 版本不一致
    • 现象:脚本在 Windows 上录制/编辑后,在 Linux 上执行报错
    • 处理:控制机与被控机 JMeter 版本保持一致
  • 生成 HTML 报告失败
    • 现象:报告目录非空或缺少依赖
    • 处理:确保报告输出目录为空,且 lib/xalan*.jarlib/serializer*.jarextras/ant-jmeter*.jar 在类路径中可用。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: JMeter在Debian上的使用教程
本文地址: https://pptw.com/jishu/755964.html
Linux中mount命令挂载失败怎么办 如何通过mount命令添加交换分区

游客 回复需填写必要信息