jmeter分布式压测
1、jmeter分布式压测原理
Master:通过RMI远程消息通信机制,向slave server发号施令。
在Master上的jmeter.properties 文件中配置slave的ip和端口号,slave server 启动Jmeter-server,等待master指令,收到指令后,向目标api压测,并将压测完结果返回给master。
Master和slave必须在同一个网段,否则不在同个网段,可能因为网络状况不同,并发性能还不如单机并发。(不在同一网段会特别慢)
2、机器准备
Master: macOs
Slave: macOS(同时作为master和slave) 、windows10
3、slave配置
vi jmeter.properties
(1)查找server_port,把server_port前面的#号去掉,修改端口号为8899
(2)修改#server.rmi.ssl.disable=false为server.rmi.ssl.disable=true
vi jmeter-server
(3)修改#RMI_HOST_DEF=-Djava.rmi.server.hostname=xxx.xxx.xxx.xxx为RMI_HOST_DEF=-Djava.rmi.server.hostname=本机ip
(4)启动jmeter服务
./jmeter-server(linux)
jmeter-server.bat(windows)
4、在master机器上
vi jmeter.properties
(1)通过vi的查找功能/remote_hosts找到remote_hosts=127.0.0.1并进行修改;
remote_hosts=slave1:8899,slave2:8899(本机既做master和slave的话要把本机的ip也写上)
(2)查找server_port,把server_port前面的#号去掉,修改端口号为8899
(3)修改#server.rmi.ssl.disable=false为server.rmi.ssl.disable=true
vi jmeter-server
(4)修改#RMI_HOST_DEF=-Djava.rmi.server.hostname=xxx.xxx.xxx.xxx为RMI_HOST_DEF=-Djava.rmi.server.hostname=本机ip
(5)启动jmeter服务(master机器同时作为slaves时一定要启动否则无法运行,只作为master时不用启动)
./jmeter-server(linux)
jmeter-server.bat(windows)
5、在master上进行远程启动
6、slave机器上可以看到执行日志(日志这种表示执行成功)