在通常狀況下一臺服務器若是要作大量用戶併發的壓力測試是扛不住的,基本上jmeter都崩潰。如今咱們藉助Jmeter提供的Controller+Agent模式搭建一套分佈式壓力測試環境java
角色 | IP | 操做系統 | 版本 |
---|---|---|---|
Controller | 192.168.10.103 | Windows 10 | 5.1.1 |
Agent | 192.168.10.210 | CentOS 7 | 5.2.1 |
Agent | 192.168.10.211 | CentOS 7 | 5.2.1 |
注意:正常狀況下,咱們建議全部的jmeter的版本要一致,若是實在不一致,Agent的版本也要高於Controller.apache
Agent機器的配置:
1.安裝JAVA 1.8 JDK(略)
2.下載Jmeter服務器
wget http://mirrors.tuna.tsinghua.edu.cn/apache//jmeter/binaries/apache-jmeter-5.2.1.tgz tar zxf apache-jmeter-5.2.1.tgz
3.關閉rmi ssl併發
sed -i 's@#server.rmi.ssl.disable=false@server.rmi.ssl.disable=true@g' apache-jmeter-5.2.1/bin/jmeter.properties
不然就會出現
Server failed to start: java.rmi.server.ExportException: Listen failed on port: 0; nested exception is:
java.io.FileNotFoundException: rmi_keystore.jks (No such file or directory)
An error occurred: Listen failed on port: 0; nested exception is:
java.io.FileNotFoundException: rmi_keystore.jks (No such file or directory)分佈式
4.配置rmi.server.hostname,修改apache-jmeter-5.2.1/bin/jmeter-server 文件的
#RMI_HOST_DEF=-Djava.rmi.server.hostname=xxx.xxx.xxx.xxxide
修改成
RMI_HOST_DEF=-Djava.rmi.server.hostname=192.168.10.210 (若是是211則爲192.168.10.211)測試
5.啓動jmeter-server
apache-jmeter-5.2.1/bin/jmeter-server &操作系統
Controller機器配置:
一樣須要修改jmeter.properties文件的
#server.rmi.ssl.disable=false
修改成server.rmi.ssl.disable=truecode
而後將文件中的
remote_hosts=127.0.0.1修改成
remote_hosts=192.168.10.210:1099,192.168.10.211:1099server