JMeter分佈式壓測

爲了讓jmeter工具提供更強大的負載能力,jmeter提供了多臺機器同時產生負載的機制。
1、申請5臺Linux服務器,配置好點。
2、分佈式測試原理:其中一臺做爲主控機/調度機(server),其餘爲壓力機(agent)java

3、處理過程:linux

  1)調度機server啓動之後,會拷貝本地的jmx文件分發到遠程的agent機器上;apache

  2)agent機器拿到腳本之後啓動命令行模式去執行腳本,對於每臺agent機器拿到的腳本都是同樣的,因此若是jmx腳本爲50個線程跑3分鐘,那麼實際併發就是50*5=250個線程併發跑3分鐘;windows

  3)執行時,agent會把執行得到的數據結果傳給server機器,server機器會收集全部agent機器的信息並彙總,這樣server機器上就存在一份全部agent機器彙總的數據結果。服務器

4、Jmeter分佈式壓測環境搭建網絡

  一、分佈式環境壓力服務器要求:併發

  須要server(控制機)和agent(壓力機),agent搭建在linux服務器環境下,server搭建在Linux或windows環境下。
  壓力測試瓶頸大都在帶寬上面,須要保證壓力機的帶寬要比服務器的帶寬高,否則壓力上不去。
  須要保證agent和server都在一個網絡中,且在多網卡環境須要保證啓動的網卡都在一個網段。
  須要保證server和agent之間的時間同步。
  關閉防火牆分佈式

  二、Windows部署jmeter工具

  (1)部署jdk環境,配置path變量
  (2)直接去官網下載最新的二進制源碼包便可。
  (3)解壓jmeter到指定目錄,設置path變量,安裝完成以後,在命令行運行jmeter命令,若是能夠正常啓動jmeter,說明環境配置ok。測試

  三、Linux部署jmeter

  (1)jmeter運行環境依賴java的jdk,因此須要安裝jdk,jmeter5.0版本以上須要安裝jdk1.8及以上版本;首先下載:jdk-8u131-linux-x64.tar.gz、apache-jmeter-5.0.zip,並上傳至服務器,並解壓:

  tar zxvf jdk-8u131-linux-x64.tar.gz    --mv jdk-8u131-linux-x64 jdk1.8

  unzip -o apache-jmeter-5.0.zip    --mv apache-jmeter-5.0 jmeter

  (2)配置環境變量:vi /etc/profile

在文件的最後面加上須要配置的環境變量,紅色路徑能夠根據自身環境進行修改:

JAVA_HOME=/root/gss/jdk1.8

JRE_HOME=$JAVA_HOME/jre

JMETER_HOME=/root/gss/jmeter

CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib

export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$JMETER_HOME/bin/

export JMETER_HOME=/root/gss/jmeter

export CLASSPATH=$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HOME/lib/jorphan.jar:$CLASSPATH

export PATH=$JMETER_HOME/bin:$PATH

  (3)當即生效配置文件,執行命令:source /etc/profile

    檢查安裝結果:java -version、jmeter --version

  (4)修改主控機啓動配置使其能夠調度全部壓力機:

 

  vi /root/gss/jmeter/bin/jmeter.properties

 

remote_hosts=127.0.0.1:1099,192.xx.xx.15:1099,192.xx.xx.16:1099,192.xx.xx.17:1099,192.xx.xx.18:1099(多臺slave以前用 "," 隔開)

#server.rmi.ssl.disable=false  # 此爲必改項,放開註釋,false改成true

說明:

 

  一、主控機能夠只是server,也可既是server也是agent:若是自身作壓力機,將127.0.0.1也配置上;不然,不須要配置。

  二、各個壓力機的端口號可修改,也可不修改:若修改,就按新修改的端口號進行配置;沒修改,jmeter默認端口號1099,直接配置也能夠。 

  #server_port=1099      #端口號修改:放開註釋,隨意修改

  (5)修改全部服務器的jmeter配置:

5、上傳腳本到主控機上,執行腳本

  jmeter -n -t login.jmx -r -l login.jtl -e -o /root/gss/report-login

jmeter參數介紹:

  -n 非 GUI 模式 -> 在非 GUI 模式下運行 JMeter
  -t 測試文件 -> 要運行的 JMeter 測試腳本文件
  -r 遠程執行 -> 啓動遠程服務
  -l 日誌文件 -> 記錄結果的文件
  -e 測試文件 ->指腳本運行完後生成報告
  -o 測試文件 -> 指定報告存放的目錄
  -h 幫助 -> 打印出有用的信息並退出
相關文章
相關標籤/搜索