jmeter为何需要分布式测试?

——jmeter由java开发,耗内存、cpu,所以大并发下需要分布式测试,这样可以避免性能测试中jmeter本身的影响

Controller:主要负责性能测试脚本的分发,及各个代理机(Agent)的测试结果收集汇总,报告产出。

Agent:主要负责执行性能测试脚本及断言(命令行模式执行,无界面),并将结果反馈给Controller。

步骤:

1、部署Agent(代理)

 配置环境变量,新建JMETER_HOME环境变量,在CLASSPATH加入如下内容:%JMETER_HOME%\lib\ext\ApacheJMeter_core.jar; %JMETER_HOME%\lib\jorphan.jar;%JMETER_HOME%\lib\logkit-2.0.jar;

2、关闭防火墙

3、在主controller机器上的jmeter-bin目录下找到jmeter.properties,在打开的文件中查找“remote_hosts=”这个字符串,将localhost改为其他压力机的ip,端口号可默认一样

fenbushi1

4、然后运行所有agent机器上的jmeter-server.bat文件

5、启动主controller机子上的jmeter应用,添加监听器,选择菜单“运行-远程启动”来分别启动agent,也可以直接选择“远程全部启动”来将所有的agent启动

fenbushi2

如果需求为600并发,我们可以设置3个代理机,主controller上设置线程数为200即可

注意:

►jmeter版本和插件最好保持一致

 

►参数文件:如果用CSV进行参数化,那么需要把参数文件在每台slave上拷一份且路径需要设置成一样的。

 

►如果多网卡造成链接失败,可以在网络里面禁用agent其他虚拟网络:打开网络和共享中心->更改适配器设置->找到对应的虚拟网络,右击禁用

标签: IT

添加新评论