【性能测试】13_JMeter _JMeter分布式

文章目录

  • 一、分布式
    • [1.1 为什么使用分布式](#1.1 为什么使用分布式)
    • [1.2 什么是分布式](#1.2 什么是分布式)
    • [1.3 分布式原理](#1.3 分布式原理)
  • 二、分布式配置
    • [2.1 代理机(Agent)配置](#2.1 代理机(Agent)配置)
    • [2.2 控制机(Controller)配置](#2.2 控制机(Controller)配置)
  • 三、实施案例
    • [3.1 搭建目录结构](#3.1 搭建目录结构)
    • [3.2 执行机和控制机配置](#3.2 执行机和控制机配置)
    • [3.3 执行机和控制机启动](#3.3 执行机和控制机启动)
  • 四、注意事项

一、分布式

1.1 为什么使用分布式

  • 在使用JMeter进行性能测试时, 如果并发数比较大(比如项目需要支持10000并发), 单台电脑的(CPU和内存)可能无法支持, 这时可以使用JMeter提供的分布式测试的功能。
  • 或者说:计算机的硬件配置,会在性能测试过程中,成为制约数据设置的重要瓶颈

1.2 什么是分布式

将一个测试目标,分摊到多个主机上,分开部署执行。

1.3 分布式原理

  • 分布式测试时通常由1台控制机和N台代理机组成。
  • 控制机:给代理发送任务,接收代理机返回的数据统计,做汇总展示。
  • 代理机:往服务器发送HTTP请求,并接收服务器的响应,并对响应进行处理。

二、分布式配置

file:///C:/Z/Test/apache-jmeter-5.6.3/printable_docs/index.html

当下最新款CPU所支持的线程数:

2.1 代理机(Agent)配置

yacas 复制代码
1. Agent机上需要安装JMeter
2. 配置当前代理机的port:
  - 打开bin/jmeter.properties文件,修改`server_port`,比如:`server_port=2001`
3. 将RMI SSL设置为禁用
  - 打开bin/jmeter.properties文件, 修改为: server.rmi.ssl.disable=true
4. 运行Agent上的jmeter-server.bat文件,启动JMeter

2.2 控制机(Controller)配置

yacas 复制代码
1. 修改bin/jmeter.properties文件下`remote_hosts`,IP和port是代理机的。如果有多个用英文逗号隔开。
  - 示例:`remote_hosts=192.168.182.100:1099,192.168.182.101:1099`
2. 将RMI SSL设置为禁用
  - 打开bin/jmeter.properties文件, 修改为: server.rmi.ssl.disable=true
3. 启动JMeter
4. 选择菜单: 运行-->远程启动/远程全部启动

三、实施案例

需求:一台控制机和两台执行机, 做分布式; 要求控制机启动, 两台执行机执行, 反馈结果;

3.1 搭建目录结构

3.2 执行机和控制机配置

1、 执行机A配置修改:

2、执行机B配置修改:

3、控制机配置修改;

3.3 执行机和控制机启动

1、代理机:进入bin目录下,执行jmeter_server.bat。(启动执行机A和执行机B)

yacas 复制代码
【注意】︰如果启动报错:
用编辑器打开jmeter-server文件(无论Mac还是Windows)修改30行:
改为:RMI_HOST_DEF=-Djava.rmi.server.hostname=127.0.0.1并保存。
windows系统,重启后使用"管理员身份"运行jmeter-server.bat 文件。

2、控制机:进入bin目录下,执行jmeter.bat。启动时,点击"运行"---"远程启动所有"控制代理机的运行 。

yacas 复制代码
目标:60次并发访问。线程数=30 (因为有2台分布式机器,控制机只是汇总数据)

3、查看聚合报告。

四、注意事项

1、当下,最新款CPU所支持的线程数:1000~2000

2、windows系统,发送网络请求时,TCP协议最大连接数限制!

相关推荐
Coder_Boy_9 分钟前
基于Spring AI的分布式在线考试系统-事件处理架构实现方案
人工智能·spring boot·分布式·spring
袁煦丞 cpolar内网穿透实验室1 小时前
远程调试内网 Kafka 不再求运维!cpolar 内网穿透实验室第 791 个成功挑战
运维·分布式·kafka·远程工作·内网穿透·cpolar
人间打气筒(Ada)2 小时前
GlusterFS实现KVM高可用及热迁移
分布式·虚拟化·kvm·高可用·glusterfs·热迁移
xu_yule2 小时前
Redis存储(15)Redis的应用_分布式锁_Lua脚本/Redlock算法
数据库·redis·分布式
難釋懷6 小时前
分布式锁的原子性问题
分布式
网络安全-杰克7 小时前
Jmeter压力测试工具安装与使用
自动化测试·软件测试·测试工具·jmeter·职场和发展
ai_xiaogui7 小时前
【开源前瞻】从“咸鱼”到“超级个体”:谈谈 Panelai 分布式子服务器管理系统的设计架构与 UI 演进
服务器·分布式·架构·分布式架构·panelai·开源面板·ai工具开发
凯子坚持 c7 小时前
如何基于 CANN 原生能力,构建一个支持 QoS 感知的 LLM 推理调度器
分布式
飞升不如收破烂~7 小时前
Redis 分布式锁+接口幂等性使用+当下流行的限流方案「落地实操」+用户连续点击两下按钮的解决方案自用总结
数据库·redis·分布式