当前位置:网站首页>jmeter分布式压测
jmeter分布式压测
2022-08-04 00:28:00 【俊先】
1.什么是分布式压测?
由一台控制机(Master )发出命令,控制多个压力机(Slaves)执行操作。
2、为什么要做分布式压测?
- 一台压力机的 Jmeter 默认最大支持 1000 左右的并发用户数(线程数),再大的话,容易造成卡顿、无响应等情况,这是受限于Jmeter 其本身的机制和硬件配置(内存、CPU等)
- 由于 Jmeter 是 Java 应用,对 CPU 和内存的消耗较大,在需要模拟大量并发用户数时,单机很容易出现 JAVA内存溢出的错误,导致测试脚本本身就有瓶颈
3、实操
1、控制机和压力机的前提条件:
- jmeter 版本要一致
- jdk 主版本要一致(1.7、1.8…)
- jmeter 脚本中,csv 文件要一致
- jmeter 的插件要一致
- 同一局域网,防火墙开放端口
2、压力机操作步骤(以linux系统为例)
1. 编辑jmeter.properties文件
- 修改 server_port 端口默认为1009
# RMI port to be used by the server (must start rmiregistry with same port)
server_port=1234
- 修改 server.rmi.port 端口,和 server_port 保持一致即可, 默认是会帮你保持一致的
# To change the default port (1099) used to access the server:
server.rmi.port=1234
- 设置 server.rmi.ssl.disable,默认 false,代表需要认证设置为 true,减少不必要的麻烦
# Set this if you don't want to use SSL for RMI
server.rmi.ssl.disable=true
2. 启动 jmeter-server 服务
./jmeter-server -Djava.rmi.server.hostname=压力机ip
3、控制机操作步骤
1. 编辑jmeter.properties文件
- 修改 remote_hosts,多个压力机以逗号分隔,如果控制机也测试则加 127.0.0.1:port ,然后修改
server_port 和 server.rmi.port (和压力机一样步骤)
remote_hosts=192.168.220.129:1234,127.0.0.1:1234
#remote_hosts=localhost:1099,localhost:2010
# RMI port to be used by the server (must start rmiregistry with same port)
server_port=1234
# To change the default port (1099) used to access the server:
server.rmi.port=1234
- 设置 server.rmi.ssl.disable
# Set this if you don't want to use SSL for RMI
server.rmi.ssl.disable=true
- 设置 mode,用于查看分布式测试过程中,每个压力机的测试结果。不启用,在运行过程中,控制器是无法实时看到压力机的结果
mode=Standard
2. 控制机运行分布式测试

jmeter -n -t 分布式测试计划.jmx -l C:\Users\one_day_i_will\Desktop\test\分布式测试计划.jtl -e -o C:\Users\one_day_i_will\Desktop\test\report -R 127.0.0.1,192.168.220.129
`
边栏推荐
猜你喜欢
随机推荐
The problem of disorganized data output by mnn model
sqlnet.ora文件与连接认证方式的小测试
苹果对高通说:我4.45亿美元买下一个新园区,可能计划加快基带芯片自研
数据库扩容也可以如此丝滑,MySQL千亿级数据生产环境扩容实战
C语言实验十五 文件
Spinnaker调用Jenkins API 返回403错误
七夕佳节即将来到,VR全景云游为你神助攻
搭建好pytorch环境后,pip和conda指令不能用
孙宇晨:Web3.0和元宇宙将协助人类更加全面地进入网络世界
2022-08-03: What does the following go code output?A: 2; B: 3; C: 1; D: 0.package main import "fmt" func main() { slice := []i
Getting started with MATLAB 3D drawing command plot3
Node.js的基本使用(三)数据库与身份认证
小米--测试开发
电子组装行业对MES管理系统的需求分析
Jmeter-参数化
北京电竞元宇宙论坛活动顺利召开
MPLS Comprehensive Experiment
Salesforce的中国区业务可能出现新变化,传言可能正在关闭
GeoAO:一种快速的环境光遮蔽方案
C# WPF设备监控软件(经典)-下篇









