歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> 關於Linux >> 性能測試工具curl-loader二---測試分析

性能測試工具curl-loader二---測試分析

日期:2017/3/3 16:37:44   编辑:關於Linux

本文在第一篇的基礎上講解,如果你還沒有安裝curl-loader性能測試工具。請先參考《性能測試工具curl-loader(linux)》

這一節具體分析一下curl-loader的使用,以及各項參數的含義。

簡單的性能測試與要求環境:

------- --------------------------------------------------------------------------------------------------------------- ----------------------

訪問百度首頁:http://www.baidu.com/index.html

虛擬用戶數:20

初始啟動用 戶:1

每秒鐘啟動:1 (20秒後20位用戶全部啟動)

網絡環境:本地linux -----外網百度首頁 帶寬:45KB/s (不穩定)

性能工具:curl-loader

--------------------------------------- -------------------------------------------------------------------------------------------------------

性 能文件配置:

可以在curl-loader-0.56/conf-examples/ 目錄下任意找一個配置文件,拷貝重名為: baidu.conf

[root@youname conf-examples]# vi baidu.conf 打開配置文件進行修改

########### GENERAL SECTION ################################    
BATCH_NAME= baidu                 //測試對象的名稱    
CLIENTS_NUM_MAX=20     //最大虛擬用戶數    
CLIENTS_NUM_START=1     //一開始啟動用戶數       
CLIENTS_RAMPUP_INC=1     //每秒鐘啟動幾個用戶    
INTERFACE   =eth0         //使用的網卡eth0    
NETMASK=16           //子網掩碼位數    
IP_ADDR_MIN= 192.168.1.1       //起始IP地址    
IP_ADDR_MAX= 192.168.53.255  #Actually - this is for self-control      //最後的IP地址范圍
CYCLES_NUM= -1    // -1 表示無限循環    
URLS_NUM= 1  
         
########### URL SECTION ####################################    
         
URL=http://www.baidu.com/index.html      //要測試的URL    
#URL=http://localhost/ACE-INSTALL.html        
URL_SHORT_NAME="local-index"
REQUEST_TYPE=GET    
TIMER_URL_COMPLETION = 5000      # In msec. When positive, Now it is enforced by cancelling url fetch on timeout 

   
TIMER_AFTER_URL_SLEEP =20

關於各項參數的含義,上面代碼中已經加了注釋。修改完成後,保存退出!

運行 性能測試:

執行下面命令運行配置文件,開始進行測試。

[root@youname curl-loader-0.56]# curl- loader -f ./conf-examples/baidu.conf 啟動運行剛才配置的文件

============  loading batch is: mysimp     ======================================    
--------------------------------------------------------------------------------    
Interval stats (latest:3 sec, clients:20, CAPS-curr:23):    
H/F   Req:70,1xx:0,2xx:77,3xx:0,4xx:0,5xx:0,Err:0,T-Err:3,D:273ms,D-2xx:273ms,Ti:196498B/s,To:4344B/s    
H/F/S Req:0,1xx:0,2xx:0,3xx:0,4xx:0,5xx:0,Err:0,T-Err:0,D:0ms,D-2xx:0ms,Ti:0B/s,To:0B/s    
--------------------------------------------------------------------------------    
Summary stats (runs:114 secs, CAPS-average:24):    
H/F   Req:2731,1xx:0,2xx:2713,3xx:0,4xx:0,5xx:0,Err:15,T-Err:46,D:280ms,D-2xx:280ms,Ti:187514B/s,To:4385B/s    
H/F/S Req:0,1xx:0,2xx:0,3xx:0,4xx:0,5xx:0,Err:0,T-Err:0,D:0ms,D-2xx:0ms,Ti:0B/s,To:0B/s    
=================================================================================    
 Manual: clients:max[20],curr[20]. Inc num: [+|*].    
===================================================================

注:上面信息一直在刷新中。按鍵盤 ctrl+C 鍵終止測試

各項參數說明:

interval stats 間隔統計

latest 最新數據(3秒內的)

clients 並發用戶數量

CAPS-curr 最新發送請求數

req: request (請求)

- 1xx成功NUM; - 2xx成功NUM;- 3xx的重定向數量;- 4xx客戶端錯誤數;- 5xx服務器錯誤數;

平均2XX(成功)的HTTP響應中的應 用服務器延時,如上,但只有2xx有應答。來推動是3xx的重定向和5xx服務器錯誤/拒絕未必能真實反映一個測試服務器工作的功 能(D2XX);

Ti (T-in) 吞吐量“吞”,平均值,字節/每秒

To (T-out) 吞吐量“吐”,平均值,字節/每秒

Summary stats 總結統計

runs 運行時間

CAPS-average 總平均發送請求數(秒)

錯誤類型 :

err - 其他NUM錯誤,如解析,TCP連接,服務器關閉或空響應;

T-err - URL完成 時間到期的錯誤;

測試結果信息

k上面提到按鍵盤ctrl+C 鍵將終止測試,curl-loader會給出如下提示:

======= SIGINT Received ============.    
H/F   Req:97,1xx:0,2xx:97,3xx:0,4xx:0,5xx:0,Err:0,T-Err:0,D:211ms,D-2xx:211ms,Ti:257228B/s,To:5852B/s    
H/F/S Req:0,1xx:0,2xx:0,3xx:0,4xx:0,5xx:0,Err:0,T-Err:0,D:0ms,D-2xx:0ms,Ti:0B/s,To:0B/s    
         
=======================================================================================    
End of the test for batch: mysimp    
=======================================================================================    
         
         
Test total duration was 117 seconds and CAPS average 23:    
H/F   Req:2828,1xx:0,2xx:2810,3xx:0,4xx:0,5xx:0,Err:15,T-Err:46,D:277ms,D-2xx:277ms,Ti:189301B/s,To:4423B/s    
H/F/S Req:0,1xx:0,2xx:0,3xx:0,4xx:0,5xx:0,Err:0,T-Err:0,D:0ms,D-2xx:0ms,Ti:0B/s,To:0B/s    
         
Exited. For details look in the files:    
- baidu.log for errors and traces;    
- baidu.txt for loading statistics;    
- baidu.ctx for virtual client based statistics.    
- baidu.ops for operational statistics.    
Add -v and -u options to the command line for verbose output to mysimp.log file.    
You have new mail in /var/spool/mail/root

k測試總時間為117秒和CAPS平均23

kcaps 每秒發送請求數量

--------------------------------------------------

- baidu.log for errors and traces;

- baidu.txt for loading statistics;

- baidu.ctx for virtual client based statistics.

- baidu.ops for operational statistics

baidu.log錯誤和痕跡;

baidu.txt對於加載統計數字

baidu.ctx虛擬客戶端的統 計數字。

baidu.ops業務統計 。

測試運行完成後會在當前目錄下生成上面幾個文件(bidu.log 、baidu.txt、 baidu.ctx、baidu.ops),我們可以查看那幾個文件獲得更詳細的測試數據。

如果想在運行測試的過程中獲得更詳細的 信息,可以在運行測試的命令中加 -v 和 -u參數。命令使用如下

[root@youname curl-loader-0.56]# curl- loader -v -f ./conf-examples/baidu.conf

[root@youname curl-loader-0.56]# curl-loader -u -f ./conf-examples/baidu.conf

總結:通過對上面內容的分析,大體對curl-loader的各項參數有了初 步了解。當然,我所列舉的內容並不詳細。還有地方比較模糊,比如運行過程中H/F和H/F/S 我都沒整太明白具體表示的含義。

本文參考官方FAQ文檔:http://curl-loader.sourceforge.net/doc/faq.html

Copyright © Linux教程網 All Rights Reserved