本文由南京正厚陈华萍老师提供
Jmeter分布式设置操作说明
一、前提条件
控制机(Master)和压力机(Slave)的 jmeter 要一致,具体体现如下:
1.jmeter 版本要一致
2.jdk 主版本要一致(1.7、1.8...)
3.jmeter 脚本中,csv 文件要一致
4.jmeter 的插件要一致
5.同一局域网,防火墙开放端口
6.jdk 版本一致,看主版本即可
7.csv 文件一致
8.主要是数据和路径要一致
9.保证一致性方法
二、Jmeter分布式执行原理:
1、Jmeter分布式测试时,选择其中一台作为控制机(Master),其它机器做为压力机(Slave)。
2、执行时,Master会把脚本发送到每台Slave上,Slave 拿到脚本后开始执行,Slave执行时不需要启动Jmeter,只需要把jmeter-server.bat文件打开,它应该是通过命令行模式来执行的。
3、执行后,Slave会把结果回传给Master,Master会收集所有Slave的信息并汇总。如下图所示:
三、压力机(Slave)配置:
1、Slave机上需要安装JDK、Jmeter,并且配置好环境变量。
2、打开“运行”,输入"cmd",打开运行面板,输入“ipconfig”,找到IP地址,例如是:192.168.8.149
3、打开Jmeter/bin/jmeter.properties,找到”remote_hosts=127.0.0.1”,把这一行修改为”remote_hosts=192.168.8.149:1099,1099是端口号,可以随意自定义。
4、打开jmeter-server.bat文件,就设置完成了,等待控制机(Master)启动。
四、控制机(Master)配置:
1、Master机上需要安装JDK、Jmeter,并且配置好环境变量。
2、打开“运行”,输入"cmd",打开运行面板,输入“ipconfig”,找到IP地址,例如是:192.168.8.174
3、打开Jmeter/bin/jmeter.properties,找到”remote_hosts=127.0.0.1”,把这一行修改为”remote_hosts=192.168.8.149:1099,192.168.8.174:1099,1099是端口号,可以随意自定义。如果有多台压力机,这里需要把所有的压力机的IP地址和端口号都加入进来。
4、打开jmeter-server.bat文件,设置完成了。
五、开始添加线程组和请求来运行查看结果:
1、打开jmeter.bat文件,添加线程组,编辑线程数,这里设置100个线程数,循环2次,就是一台机器发送100*2=200个请求。
2、添加HTTP请求,这里以访问淘宝为例。
3、添加察看结果数和聚合报告,点击运行,可以选择远程启动或者远程全部启动,如果是点击远程启动,可以选择任意一台电脑来运行,如果是点击远程全部启动就会运行控制机和所有的压力机。
4、这里以点击远程全部启动为例。运行结束后,查看聚合报告,每台电脑设置的线程数为200,这里一共是两台电脑,所以是200*2=400个线程数。