阿里雲linux安裝jmeter並進行壓測

 

1、阿里雲linux安裝JDK

一、下載安裝JDKhtml

jdk官網,選擇linux版本,下載並保存。java

(一)yum安裝linux

安裝epel的yumyuanshell

yum install epel-release -yapache

查看yum源裏當前jdk有哪些版本vim

yum list | grep openjdkapi

執行安裝命令:性能優化

yum install java-1.8.0 -ybash

檢查是否安裝成功服務器

java -version

(二)rpm安裝

官網下載rpm包

xshell上傳到服務器

執行安裝命令:

rpm -ivh jdk-8u161-linux-x64.rpm

檢查是否安裝成功

java -version

(三)tar安裝

官網下載tar.gz包

xshell上傳到服務器

移動到/opt目錄下:mv jdk-8u161-linux-x64.tar.gz /opt

進入/opt目錄:cd /opt

解壓:tar -zxvf  jdk-8u161-linux-x64.tar.gz 

進入安裝目錄:cd jdk-8u161-linux-x64

配置環境變量:

vim ~/.bash_profile

添加下面的內容

export PATH="/opt/jdk1.8.0_161/bin:$PATH"

而後保存退出,使用source命令更新這個文件,命令是:

source ~/.bash_profile

輸出一下環境變量,命令是:

echo $PATH

檢查是否安裝成功

java -version

2、阿里雲linux安裝jmeter

一、官網下載jmeter安裝包,上傳至/opt目錄下,並解壓

cd /opt

tar -zxvf apache-jmeter*

二、配置環境變量

vim /etc/profile

增長以下代碼

#jmeter環境變量

export PATH=/root/jmeter/bin:$PATH

保存退出

source /etc/profile讓配置生效

jmeter -v檢查是否安裝成功

 

3、Jmeter非GUI模式壓測

非GUI界面,壓測參數講解

  • -h 幫助
  • -n 非GUI模式
  • -t 指定要運行的 JMeter 測試腳本文件
  • -l 記錄結果的文件 每次運行以前,(要確保以前沒有運行過,即xxx.jtl不存在,否則報錯)
  • -r Jmter.properties文件中指定的全部遠程服務器
  • -e 在腳本運行結束後生成html報告
  • -o 用於存放html報告的目錄(目錄要爲空,否則報錯)

官方配置文件地址 http://jmeter.apache.org/usermanual/get-started.html

jmeter -n -t linux_users_api.jmx -l result.jtl -e -o /usr/local/softwate/jmeter/temp/ResultReport

jmeter -n -t /Users/jack/Desktop/linux_users_api.jmx -l result.jtl -e -o /Users/jack/Desktop/person/jmeter/temp

4、html可視化壓測報告講解

一、dashboard講解

1)Test and Report informations Source file:jtl文件名
Start Time :壓測開始時間
End Time :壓測結束時間
Filter for display:過濾器
Lable:sampler採樣器名稱

2)APDEX(Application performance Index)
apdex:應用程序性能指標,範圍在0~1之間,1表示達到全部用戶均滿意
T(Toleration threshold):可接受閥值
F(Frustration threshold):失敗閥值

3)Requests Summary
OK:成功率
KO:失敗率
4)Statistics 統計數據
lable:sampler採樣器名稱

samples:請求總數,併發數*循環次數
KO:失敗次數
Error%:失敗率

Average:平均響應時間
Min:最小響應時間
Max:最大響應時間
90th pct: 90%的用戶響應時間不會超過這個值(關注這個就能夠了)
2ms,3ms,4,5,2,6,8,3,9

95th pct: 95%的用戶響應時間不會超過這個值
99th pct: 99%的用戶響應時間不會超過這個值 (存在極端值)
throughtput:Request per Second吞吐量 qps

received:每秒從服務器接收的數據量
send:每秒發送的數據量

二、charts講解

1)Over Time(隨着時間的變化)
Response Times Over Time:響應時間變化趨勢
Response Time Percentiles Over Time (successful responses):最大,最小,平均,用戶響應時間分佈
Active Threads Over Time:併發用戶數趨勢
Bytes Throughput Over Time:每秒接收和請求字節數變化,藍色表示發送,黃色表示接受
Latencies Over Time:平均響應延時趨勢
Connect Time Over Time :鏈接耗時趨勢

1)Throughput
Hits Per Second (excluding embedded resources):每秒點擊次數
Codes Per Second (excluding embedded resources):每秒狀態碼數量
Transactions Per Second:即TPS,每秒事務數
Response Time Vs Request:響應時間和請求數對比
Latency Vs Request:延遲時間和請求數對比

1)Response Times
Response Time Percentiles:響應時間百分比
Response Time Overview:響應時間概述
Time Vs Threads:活躍線程數和響應時間
Response Time Distribution:響應時間分佈圖

5、Jmeter壓測接口的性能優化

一、使用非GUI模式:jmeter -n -t test.jmx -l result.jtl

二、少使用Listener, 若是使用-l參數,它們均可以被刪除或禁用。 三、在加載測試期間不要使用「查看結果樹」或「查看結果」表監聽器,只能在腳本階段使用它們來調試腳本。 四、包含控制器在這裏沒有幫助,由於它將文件中的全部測試元素添加到測試計劃中。] 五、不要使用功能模式,使用CSV輸出而不是XML 六、只保存你須要的數據,儘量少地使用斷言 七、若是測試須要大量數據,能夠提早準備好測試數據放到數據文件中,以CSV Read方式讀取。 八、用內網壓測,減小其餘帶寬影響壓測結果 九、若是壓測大流量,儘可能用多幾個節點以非GUI模式向服務器施壓

相關文章
相關標籤/搜索