【性能测试】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协议最大连接数限制!

相关推荐
Codeking__2 小时前
Redis分布式——分布式锁
数据库·redis·分布式
optimistic_chen2 小时前
【Redis系列】哨兵模式
linux·数据库·redis·分布式·哨兵
码农水水12 小时前
国家电网Java面试被问:TCP的BBR拥塞控制算法原理
java·开发语言·网络·分布式·面试·wpf
码农水水15 小时前
京东Java面试被问:HTTP/2的多路复用和头部压缩实现
java·开发语言·分布式·http·面试·php·wpf
Francek Chen16 小时前
【大数据基础】大数据处理架构Hadoop:01 Hadoop概述
大数据·hadoop·分布式·架构
先鱼鲨生18 小时前
JMeter工具的使用
测试开发·jmeter·性能测试
少云清18 小时前
【性能测试】11_JMeter _JMeter逻辑控制器
jmeter·性能测试
少云清20 小时前
【性能测试】10_JMeter _JMeter连接数据库(重点)
数据库·jmeter
陌路201 天前
RPC分布式通信(5)--发布 RPC 服务、处理客户端调用请求
分布式·qt·rpc