JMeter分布式压测及常见问题

JMeter分布式压测及常见问题

  • 1. 应用背景
  • 2. 目的
  • 3. 介绍
    • 3.1 分布式压测原理
    • 3.2 操作步骤
      • 3.2.1 设置配置文件
  • 4. 操作建议
  • 5. 常见问题
    • 5.1 不能识别地址
    • 5.2 不能识别地址

1. 应用背景

  在性能测试过程中,并发数过大,如果还想用JMeter这个测试工具,那么就应该考虑使用分布式,JMeter是支持分布式压测的。

2. 目的

  • 了解分布式压测基本原理。
  • 熟悉并能使用分布式压测进行压测执行。

3. 介绍

3.1 分布式压测原理

  • 如下是JMeter分布式压测的原理,一个“主机”分别控制多个“肉机”,从而实现增加压力的效果。
  • 在这里插入图片描述

3.2 操作步骤

  注意: 3 台linux测试机需安装相同版本的jdk和jmeter。

3.2.1 设置配置文件

    1、在控制机上修改bin/jmeter.properties,添加从机的IP(查看/etc/hosts)及端口 1099是默认的rmi通信端口并修改自己的绑定端口,如下 :

remote_hosts=192.168.11.196:1099, 192.168.11.197:1099
​
server_port=1099server.rmi.localport=1099server.rmi.ssl.disable=true改为true,代理机和控制机都需要改

2、若修改自身IP,则进行如下操作

vi  bin/jmeter-server:
#增加如下一行
RMI_HOST_DEF=-Djava.rmi.server.hostname=10.120.11.82
#不想在配置文件增加如上代码,可以进行另外一种操作,启动服务端时指定IP
./jmeter-server -Djava.rmi.server.hostname=xx.xx.xx.xx

3、从机修改端口并添加远程主机IP及端口也是在bin/jmeter.properties
若修改自身IP,

vi bin/jmeter-server

4、在控制机执行分布式命令

#-R指定从机IP
jmeter -n -t testplan/comic.jmx -R 10.15.243.53,10.15.230.78 -l testResult/result1.jtl    ​#启动所有从机执行脚本
jmeter -n -t testplan/comic.jmx -r -l testResult/result1.jtl  

5、/jmeter -n -t .xxx_xxx.jmx -R 10.48.194.19 -l a.jtl

参数说明 :
-n :没有GUI模式启动; 
-R:这个后面要跟的是slave机器的地址和端口号,如果有多个的话用逗号隔开;
-t :后面跟的是执行的测试脚本文件的路径,这里需要执行的文件是comic.jmx;
-l :后面跟的是测试结果的存放路径,需要注意的是,这个路径的下面必须是空的,没有文件的才可以操作成功;
-j :后面跟的是测试的日志的存放路径,同样要求是空的,否则会报错;
-e :测试完成生成测试报告
-o:指定测试报告的路径,同样要求是空的,否则会报错
注:若有host同样也需要修改从机的host文件,否则会出现error

4. 操作建议

  • 如果master设置的脚本线程个数是10,启动了5个slave,那么最后的压力应该是10*5=50。
  • 为了减少出错的概率,master和slave上jmeter的版本和jdk的版本需保持一致。
  • 配置hostname,linux上修改/etc/hostname;window上操作,win+r输入drivers回车,找到etc/hosts。
  • 服务端和客户端的内存配置保持相同。(windows调整jmeter.bat;linux调整Jmeter)

5. 常见问题

5.1 不能识别地址

在这里插入图片描述
解决
  直接输入命令行:vim /etc/hostname,修改本机名称。
在这里插入图片描述

5.2 不能识别地址

在这里插入图片描述
解决:
  编辑 jmeter.properties文件,打开#server.rmi.ssl.disable=false,前边的注释,修改内容为true,重启。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/319611.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【PTA-C语言】编程练习5 - 函数与指针

如果代码存在问题,麻烦大家指正 ~ ~有帮助麻烦点个赞 ~ ~ 编程练习5 - 函数与指针 6-1 求实数和的函数(分数 10)6-2 求解一元二次方程实根的函数(分数 10)6-3 求集合数据的均方差(分数 10)6-4 计…

从vue小白到高手,从一个内容管理网站开始实战开发第三天,使用Element UI构建页面-登录(一)

上次我们介绍了如何安装Element UI库,这次我们使用Element UI中的组件开始开发我们的页面。 开发之前要先在项目中建立好几个目录,方便我们下面的开发。 一、在项目中创建页面管理目录 1、pages目录(文件夹) 首先在src文件夹下创建一个名为pages的文件夹,该文件夹用来统…

uniCloud 云数据库(新建表、增、删、改、查)

新建表结构描述文件 todo 为自定义的表名 表结构描述文件的默认后缀为 .schema.json 设置表的操作权限 uniCloud-aliyun/database/todo.schema.json 默认的操作权限都是 false "permission": {"read": false,"create": false,"update&quo…

Kotlin采集美团商家信息 同行竞争价格监控

“南方小土豆”挤爆哈尔滨旅游市场,一个冬天让哈尔滨火出了圈,让全国观众看见了不一样的逆向旅游热,虽说我心驰神往,但是无奈加班敲代码,连休息的时间都没有。前段时间我通过用java写了一个美团爬虫程序,今…

Java中的序列化方法探索

.为什么要序列化 对象不序列化,能直接存储吗? 在 Java 中,序列化是将对象的状态信息转换为可以存储或传输的形式(例如,转换为字节流)的过程。在对象数据需要在网络上传输或需要在磁盘上持久化存储时&#…

设计模式之原型模式【创造者模式】

学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您: 想系统/深入学习某技术知识点… 一个人摸索学习很难坚持,想组团高效学习… 想写博客但无从下手,急需…

2023年.AI域名销售额达550万美元 2024还要继续涨

根据域名投资专家Elliot Silver的最新文章,2023年公开报道的.AI域名销售额已经达到了550万美元,而2022年和2021年分别为90万美元和120万美元。 Silver观察到过去几年.AI域名销售额呈现逐年增长的趋势,尤其是2023年的销售额相较前两年有了显著…

高效的输电线路故障监测系统:实时监测、预防性维护

在电力系统中,输电线路的健康状态直接关系到电网的安全稳定运行。然而,由于线路的广泛分布和长距离特性,故障的检测和定位变得极其困难。为了解决这一问题,恒峰智慧设计了一种全新的高效输电线路故障监测系统,该系统采…

进程和计划任务

一、什么是程序 是一组计算机能识别和执行的指令,运行于电子计算机上,满足人们某种需求的信息化工具 用于描述进程要完成的功能,是控制进程执行的指令集 二、进程 1.什么是进程 进程:正在运行中的程序,加载到内存…

静态网页课程设计——十二花信(花朵科普)(HTML+CSS+JavaScript)

前言 使用技术:HTMLCSSJS 主要内容:对十二个月每个月的适应季节的花朵进行科普。 主要内容 1、首页 首页顶部由标题栏和一张花朵的图片组成。 下半部分对十二花信进行了简单的科普介绍,分别为一月梅花、二月杏花、三月桃花等等。。 部…

Java 跨平台实现

Java 跨平台实现 1. Java虚拟机(JVM)2. 中间代码(字节码)3. Write Once, Run Anywhere (WORA)4. Java 标准库5. 安全性与隔离6. Java Community Process (JCP) Java 的跨平台性主要是通过以下几个关键机制来实现的: 1…

Java设计模式:状态模式

❤ 作者主页:欢迎来到我的技术博客😎 ❀ 个人介绍:大家好,本人热衷于Java后端开发,欢迎来交流学习哦!( ̄▽ ̄)~* 🍊 如果文章对您有帮助,记得关注、点赞、收藏、…