IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> 分布式压测 -> 正文阅读

[开发测试]分布式压测

一:Jmeter分布式执行原理:
????????1、Jmeter分布式测试时,选择其中一台作为控制机(master),其它机器做为Agent执行机(slave)。
????????2、执行时,将命令发送到每台Agent节点,使用命令行模式执行压测脚本。
????????3、执行完成后,Agent会把结果回传给server,server会收集所有Agent的信息并汇总。

????????

?

二:分布式压测常见问题及及注意事项

2.1 注意事项:

? ? ? ?master和slave必须安装同版本的java和jmeter版本

? ? ? ?如果依赖外部文件,文件必须存放在master和slave的相同路径下,脚本只需要在master即可

2.2常见问题:

?问题1:在master上运行jmeter-server.bat时,出现“Exception creating connection?to:192.16..;nested ????????exception is:java.io.FileNotFoundException:rmi_keystore.jks(系统找不到指定的文件)”错误

解决方案:修改slave机器 apache-jmeter/bin/jmeter.properties 参数:server.rmi.ssl.disable=true

问题2:在slave上(linux系统)运行jmeter-server时,出现“An error occurred: Cannot start. localhost is a loopback address”错误

解决方案:修改jmeter-server?将jmeter-server中的RMI_HOST_DEF=-Djava.rmi.server.hostname=xxx.xxx.xxx.xxx(本机ip)

问题3:远程启动slave机器时,如出现“Jmeter nested exception is:java.net.ConnectException connection timed out:connect ”错误

1:先查看slave与master的ip配置是否一致,如果不一致修改master的jmeter.properties

? ? ????

?2:查看slaver的防火墙是否关闭,firewall-cmd --state //查看防火墙状态,systemctl stop firewalld.service //关闭防火墙

问题4:如果master发送命令后,slave长时间无响应

?解决方案:查看slave机器是否配置脚本所依赖的外部文件,slave机器的存放的外部文件路径必须与master路径一致

问题5:Java HotSpot? 64-Bit Server VM warning: INFO: os::commit_memory(0x00000000c0000000, 1073741824, 0) failed; error=‘Cannot allocate memory’ (errno=12)
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (mmap) failed to map 1073741824 bytes for committing reserved memory.
# An error report file with more information is saved as:
# /usr/local/jmeter/apache-jmeter-4.0/bin/hs_err_pid5855.log
解决方案:修改jmeter
搜索 : “${HEAP:=”-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m"}"
改变初始堆内存和最大堆内存

三:配置

? 3.1 slave配置

?上传jmeter包,java包,配置java环境

修改jmter中,bin下jmeter-server,RMI_HOST_DEF=Djava.rmi.server.hostname=xxx.xxx.xxx.xxx(本机ip)

修改jmeter.properties,server.rmi.ssl.disable=true

启动slave,jmeter的bin下执行jmeter-server,出现Created remote object: UnicastServerRef2 [liveRef: [endpoint:[192.168.252.219:41287](local),objID:[5359b66d:17eb3343a13:-7fff, 6330754479634441437]]],即启动成功

3.2 master配置

? ? ?上传jmeter包,java包,配置java环境

? ? ? 如果master即作为master又作为slave,则修改bin下jmeter-server文件,RMI_HOST_DEF=Djava.rmi.server.hostname=xxx.xxx.xxx.xxx(本机ip)

? ? ? ? 如果仅作为master则修改master的jmeter.properties中remote_hosts

如果有多个slave,则中间用“,”分开

? ? ? ? 启动master,jmeter -n -t 脚本文件 -l 生成报告的文件 -R slave的ip和端口号

? ? ? ? 如果指定slave执行,使用jmeter -n -t 脚本文件 -l 生成报告的文件 -R slave的ip和端口号(如:jmeter -n -t ../../health-code/yimatong.jmx -l report.jtl -R xxx.xxx.xxx.xxx:1099,xxx.xxx.xxx.xxx:1099)

? ? ? ? 如果启动所有slave,则jmeter -n -t ../../health-code/yimatong.jmx -l report.jtl -r即可

3.3报告生成

? ? ? ? 生成html文件格式的报告

? ? ? ? 修改master下 jmeter.properties,使jmeter.save.saveservice.output_format的格式为csv

? ? ? ? 执行jmeter -n -t ../../health-code/yimatong.jmx -l report.jtl -e -o ../report?-r

? ? ? ? 注:report必须是空文件夹

????????

?

?

????????????????
?

????????????????

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2022-02-04 11:19:58  更:2022-02-04 11:20:02 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/18 2:55:26-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码