JMeter 分布式压测配置

JMeter 分布式压测配置。以下是详细的配置步骤:


核心概念

分布式测试包含一个 控制机 (Controller) 和多个 施压机 (Load Generator)。控制机负责管理测试计划、收集结果;施压机实际执行请求并返回数据。


配置步骤

1. 环境准备
  • 所有机器
    • 安装相同版本的 JMeter 和 Java。
    • 配置相同的 JAVA_HOME 环境变量。
  • 网络互通
    • 关闭防火墙或开放端口(默认 1099, 1024-65535)。
    • 确保控制机可访问所有施压机的 IP。
2. 施压机配置
  1. 编辑 jmeter.properties 文件(位于 bin/ 目录):

    properties 复制代码
    server_port=1099            # RMI 通信端口
    server.rmi.ssl.disable=true  # 禁用 SSL(简化配置)
    server.rmi.localport=1024    # 本地端口范围起点
  2. 启动施压机服务:

    bash 复制代码
    # Linux/Mac
    ./jmeter-server
    # Windows
    jmeter-server.bat
3. 控制机配置
  1. 编辑 jmeter.properties 文件:

    properties 复制代码
    remote_hosts=192.168.1.101,192.168.1.102,192.168.1.103  # 施压机 IP 列表
  2. 启动 JMeter 控制台:

    bash 复制代码
    ./jmeter  # 或 jmeter.bat
4. 执行分布式测试
  • 在控制机的 JMeter GUI 中:
    • 加载测试计划(.jmx 文件)。
    • 点击菜单 Run → Remote Start All 启动所有施压机。

关键注意事项

  1. 安全策略
    • 为施压机设置专用测试账户(非 root)。
    • 限制 IP 访问(如 iptables)。
  2. 资源监控
    • 使用 nmontop 监控施压机的 CPU/内存。
  3. 日志排查
    • 检查施压机的 jmeter-server.log 和控制机的 jmeter.log

验证配置

在控制机执行以下命令测试连通性:

bash 复制代码
./jmeter -n -t test.jmx -r -l result.jtl  # 非GUI模式启动所有施压机

常见问题解决

  • 连接失败
    • 确认端口开放(telnet <施压机IP> 1099)。
    • 检查 remote_hosts 是否用逗号分隔。
  • 结果不一致
    • 确保所有机器使用相同的外部依赖(如 CSV 数据文件)。

通过以上步骤,即可高效利用多台机器进行大规模压力测试。

相关推荐
初次攀爬者4 天前
ZooKeeper 实现分布式锁的两种方式
分布式·后端·zookeeper
se-tester6 天前
JMeter、Postman 和 SoapUI 在做接口测试上的优势和缺点
测试工具·jmeter·接口测试·postman·soapui
断手当码农6 天前
Redis 实现分布式锁的三种方式
数据库·redis·分布式
初次攀爬者6 天前
Redis分布式锁实现的三种方式-基于setnx,lua脚本和Redisson
redis·分布式·后端
业精于勤_荒于稀6 天前
物流订单系统99.99%可用性全链路容灾体系落地操作手册
分布式
Asher05096 天前
Hadoop核心技术与实战指南
大数据·hadoop·分布式
凉凉的知识库6 天前
Go中的零值与空值,你搞懂了么?
分布式·面试·go
?Anita Zhang6 天前
联邦学习实战:如何在分布式场景下构建隐私保护机器学习模型
人工智能·分布式·机器学习
tony3656 天前
pytorch分布式训练解释
人工智能·pytorch·分布式
2501_933329556 天前
技术深度拆解:Infoseek媒体发布系统的分布式架构与自动化实现
分布式·架构·媒体