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

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

相关推荐
左灯右行的爱情1 小时前
Kafka专辑: 日志存储模型
分布式·kafka·linq
LB21121 小时前
Kafka笔记
分布式·kafka·linq
想你依然心痛3 小时前
Spark大数据分析与实战笔记(第六章 Kafka分布式发布订阅消息系统-02)
笔记·分布式·spark
胡萝卜的兔4 小时前
go-zero rpc 分布式 微服务
分布式·rpc·golang
幺零九零零4 小时前
压测-JMeter(八)
jmeter
小股虫20 小时前
分布式事务:在增长中台,我们如何做到“发出去的内容”和“记录的数据”不打架?
分布式·微服务·云原生·架构·团队建设·方法论
是三好21 小时前
分布式事务seata
java·分布式·seata
optimistic_chen21 小时前
【Redis 系列】常用数据结构---Hash类型
linux·数据结构·redis·分布式·哈希算法
yuankunliu21 小时前
【分布式事务】4、分布式事务Seata的高级应用详解
分布式
java1234_小锋21 小时前
ZooKeeper集群中服务器之间是怎样通信的?
分布式·zookeeper·云原生