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 数据文件)。

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

相关推荐
方方洛21 小时前
ray教程-25-附录E-端到端实战案例
人工智能·分布式·机器学习
迅翼SwiftWing2 天前
编队系列(二)|固定翼如何依靠邻居信息保持队形?一致性控制、通信拓扑与分布式仿真实现,附仿真代码
分布式
ly76892 天前
幂等消费者与重试副作用:Kafka 端点接入时的去重边界
分布式·kafka·linq·apache camel·幂等消费者·重试副作用·去重边界
qq_452396232 天前
第三篇:《从 ZooKeeper 到 KRaft 的迁移实战:前置条件、三阶段流程与回滚策略》
分布式·zookeeper·云原生
真上帝的左手3 天前
30. 技术专题-‌应用框架组件-关系型数据库-MySQL-Mybatis
数据库·分布式·mysql·中间件·mybatis
程序猿乐锅3 天前
万字详解Single-flight(单飞模式)
java·开发语言·分布式·后端·学习·single-flight
sunny06603 天前
推理 INFRA 方法论(2):分布式推理:TP、DP、EP、CP 与 PP 的取舍
人工智能·分布式
字节探索3 天前
Redis 分布式锁:从 SETNX 误删到看门狗自动续期的原理与实践
redis·分布式
真上帝的左手3 天前
30. 技术专题-‌应用框架组件-缓存-Redis
数据库·redis·分布式·缓存·中间件
斯普信专业组3 天前
Kafka 3.9.1 三节点集群部署方案(ZooKeeper 模式)
分布式·zookeeper·kafka