本文介绍: 有时候为了尽量模拟业务场景,需要模拟大量的并发请求,这个时候单台压力机就显得有心无力。针对这个情况,jmeter的解决方案是支持分布式压测,即将大量的模拟并发分配给多台压力机,来满足这种大流量的并发请求场景。持300左右的模拟请求线程**,再大的话,容易造成卡顿、无响应等情况,这是限于jmeter其本身的机制和硬件配置。需求1000用户,两台执行机同时接受控制机脚本去执行然后反馈给控制机,所以线程数设置500。按照一般的压力机配置,jmeter的GUI模式下(Windows),
Jmeter分布式
1. 为什么使用Jmter分布式测试
1.1 需求
对学院接口(查询学院-所有)进行1000用户并发访问,测试服务器处理批量请求能力
1.2 现状
我们单台电脑由于配置(CPU、内存)问题,最模拟500用户时,就出现卡死现象
按照一般的压力机配置,jmeter的GUI模式下(Windows),最多支持300左右的模拟请求线程**,再大的话,容易造成卡顿、无响应等情况,这是限于jmeter其本身的机制和硬件配置。
有时候为了尽量模拟业务场景,需要模拟大量的并发请求,这个时候单台压力机就显得有心无力。针对这个情况,jmeter的解决方案是支持分布式压测,即将大量的模拟并发分配给多台压力机,来满足这种大流量的并发请求场景。
2. 分布式测试
2.1 分布式测试原理
1. 一台电脑作为控制机(Controller),其它电脑做为执行机(Agent);
2. 执行时,控制机会把脚本发送到每台执行机上,执行机拿到脚本后就开始执行
3. 执行机执行时不需要启动Jmeter界面,可以理解它是通过命令行模式执行的
4. 执行完成后,执行机会把结果回传给控制机,控制机会收集所有执行机的信息并汇总
2.2 执行方案分析
1. 1台电脑(控制机)分发执行任务
2. 2台电脑(执行机)执行任务
3. 在执行机上启动监听服务程序
4. 在控制机上启动运行
5. 测试计划->聚合报告
2.3 技术难点分析
1. 执行机-jmeter.properties设置
2. 控制机jmeter.properties设置
3. 执行机启动分布式监听服务程序
3. 2台执行机,用户数如何设置
2.4 执行机Jmeter.properties配置图
1. 分别打开执行机下jmeter安装文件下的bin目录:jmeter.properties, 找到server_port
2. server_Port=1099. 1099为执行机自定义端口号
3. 注意:
- 要取消注释符号 #
- 自定义的端口号,要选择未被占用的端口号
2.5 控制机jmeter.properties配置图
1.打开控制机下jmeter安装文件下的bin目录:jmeter.properties,找搭配remote_hosts
2. remote_hosts=127.0.0.1:1099,127.0.0.1:1100
3. 注意事项:
- 多个执行机的ip间要用全英文的半角逗号隔开
2.6 执行机启动分布式监听效果图
1. 运行bin目录下jmeter-server.bat
2. 运行后勿关闭黑色窗口
2.7 控制机-线程数设置
注意:
需求1000用户,两台执行机同时接受控制机脚本去执行然后反馈给控制机,所以线程数设置500
2.8 控制机-运行效果图
1. 菜单-运行->选择全部启动
2. 快捷键->Ctrl+Shift+R
2.9 提示
1. 修改完端口要重启Jmeter.bat
2. 控制机和执行机分开(为了方便教学,这里采用控制机和代理机在1台机器上)
1). 由于控制机需要发送信息给执行机并且会接受执行机回传的测试数据所以控制机自身会有消耗
3. 参数文件:如果使用csv进行参数化,那么需要把参数文件在每台执行机上拷一份且路径需要设置成一样的;
4. 每台机器上安装的Jmeter版本和插件最好都一致,否则会出一些意外的问题;
5. 执行机上Jmeter也许需要配置JDK环境变量;
原文地址:https://blog.csdn.net/weixin_44143876/article/details/135943788
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_63343.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。