小白也会jmeter分布式压测---windows系统
测试目的:
1.按照一般的压力机配置,jmeter的GUI模式下(Windows),最多支持300左右的模拟请求线程,再大的话,容易造成卡顿、无响应等情况,由于 Jmeter 是 Java 应用,对 CPU 和内存的消耗较大,在需要模拟大量并发用户数时,单机很容易出现 JAVA 内存溢出的错误,导致测试脚本本身就有瓶颈,为了解决以上的问题故分布式压测的方案应运而生
准备工作:
1.准备一个控制机和多台执行机,执行机和控制机的jdk和jmeter版本要一致,项目包和相关的参数文件也要放在相同的目录下
2.所有的控制机和执行机都在同一个局域网
3.dos窗口ipconfig查询出所有执行机的ip地址
4.检查所有的控制机和执行机都要为静态ip。如果不是静态ip,需要修改网络。右击网络属性>更改适配器设置>右击无线网络属性>设置网络
配置操作:
1.修改控制机的jmeter安装的bin目录下jmeter.properties文件中的remote hosts=127.0.0.1:1099,xxx,xxx,xxx,xxx:1099执行机添加到后面用,隔开;server_port=1099的注释取消掉(即#取消掉)。
2.修改控制机的jmeter安装的bin目录下jmeter.properties文件中的server.rmi.ssl.disable=false改为true.
3.修改执行机的jmeter安装的bin目录下jmeter.properties文件中的remote hosts=ip:1099(此处的ip为本机的ipv4地址,端口号一定要和控制机一致,此处默认1099);server_port=1099的注释取消掉(即#取消掉)。
4.修改相应的执行机的jmeter安装的bin目录下jmeter.properties文件中的server.rmi.ssl.disable=false改为true.
注意:控制机和执行机都要修改jmeter.properties文件都要修改
执行操作:
1.启动执行机的服务,双击jmeter安装的bin目录下jmeter-server.bat
2.如果控制机也要作为压力机,也要启动服务,双击jmeter安装的bin目录下jmeter-server.bat
3.控制机双击jmeter.bat启动jmeter,点击运行>远程启动 可以单独执行某一台执行机的任务。
4.点击运行>远程启动所有,可以执行所有执行机的任务。也可以使用快捷键‘Ctrl+Shift+R’
按照文档的顺序检查和操作后,执行机的任务就能正常启动了!执行脚本的时候执行机的jmeter.bat可以不用打开,但是jmeter-server一定要打开
可能遇到问题以及解决方案:
1. 报错:java.net.UnknownHostException: hostname
解决方案:执行机先ping一下hostname,如果不能ping通,检查一下本机的DNS服务器是否正确
2.报错:java.net.ConnectException:Connection refused:connect
a.检查一下执行机的jmeter-server.bat是否启动
b.检查一下执行机的ip是否是静态,控制机dos命令去ping一下执行机ip.要能ping通
3.报错:jmeter的查看结果树中的响应结果为空
修改相应的执行机的jmeter安装的bin目录下jmeter.properties文件中的mode=Standard取消注释
4.报错:java.io.FlieNotFoundException:rmi_keystore.jks
a.检查jmeter安装的bin目录下有没有rmi_keystore.jks
b.如果检查jmeter安装的bin目录下没有rmi_keystore.jks,点击create-rmi-keystore.bat随机生成一个rmi_keystore.jks文件
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构