前面部落已经分享过用jmeter做接口测试的文章,本篇我们继续介绍下用jmeter做分布式压力测试的例子。
用jmeter做压力测试,如果只用一台机器,有鉴于线程数的限制和一台机器的性能,可能无法满足压力测试的实际需求,解决这个问题,可以采用jmeter的分布式框架。
在jmeter的分布式框架中,测试主机用来传送测试脚本到各个从机,从机则会把测试结果反馈给主机,基本结构图如下:
需要注意的是,主从各个机器需要在同一个子网内,以保证相互访问比较顺畅,如果实际测试中出现访问问题,请查看下各机器中防火墙,关闭防火墙就好了。
接下来就需要配置各台机器的配置文件。
1、各台从机配置:
需要修改各个从机bin目录下的jmeter-server.bat文件,将
REM START rmiregistry %SERVER_PORT% 修改为
REM START %JAVA_HOME%/jre7/bin/rmiregistry%SERVER_PORT% 如下图:
2、主机配置:
修改主机bin目录下jmeter.properties 文件,将其中的remote_hosts=127.0.0.1修改为:remote_hosts=从机1IP:1099,从机2IP:1099,….,从机nIP:1099
3、启动各从机进程:
启动所有从机bin目录下jmeter-server.bat
4、启动主机进程:
开启主机上bin目录下的jmeter.bat,如果是mac系统,直接运行bin目录下的jmeter即可。
5、运行脚本:
在主机上写好测试脚本,选择运行->远程全部启动,见下图
到这,jmeter分布式压力测试方式就完毕了,非常简单方便,希望各位小伙伴们喜欢~