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. 资源监控 :
    • 使用 nmon 或 top 监控施压机的 CPU/内存。
  3. 日志排查 :
    • 检查施压机的 jmeter-server.log 和控制机的 jmeter.log。

验证配置

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

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

常见问题解决

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

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

相关推荐
zuozewei13 小时前
第02篇-k6-脚本结构与生命周期
软件测试·jmeter·性能测试·k6·ai 编程
xianyuCcCcCCCcc13 小时前
Ceph 分布式存储:核心架构与集群部署
分布式·ceph·架构
fen_fen13 小时前
Jmeter5.1.1连接oracle数据库的错误复盘
数据库·jmeter·oracle
真上帝的左手14 小时前
10. 软件设计&架构-分布式文件存储系统
分布式·架构·应用架构
Thomas.Sir19 小时前
第30课:分布式事务解决方案 & Seata最终一致性实战
分布式·spring cloud·seata
donk131419 小时前
React Native for OpenHarmony 实战:三方库 react-native-circular-action-menu 的鸿蒙化适配指南
javascript·分布式·react native·react.js·wpf·harmonyos
蓝胖的四次元口袋20 小时前
RabbitMQ知识梳理(1)
分布式·rabbitmq
霸道流氓气质1 天前
Redisson BloomFilter:分布式位图实现、误判率调优与缓存穿透三级防护的 Spring Boot 生产级实战
spring boot·分布式·缓存
流烟默1 天前
ClickHouse 集群建表实战:从引擎选择到本地表 / 分布式表落地
分布式·clickhouse
donk13142 天前
React Native for OpenHarmony 实战:三方库 react-native-step-indicator 的鸿蒙化适配指南
分布式·react native·react.js·wpf·harmonyos