使用ab 做程序的併發性能測試

在學Nginx課程的過程中瞭解到了Ab這個測試併發的工具,下載下來進行測試。

下載地址, 提取碼:3m0h

(1)打開httpd/bin/文件夾,用命令行窗口執行ab程序。

(2)如果請求爲post,需要建立一個文件來進行操作。

例如,一個url接受一個token的參數進行登錄,訪問url的時候進行post操作,我們在當前文件夾建立一個token.txt文件

tokenId=be4afc178e5c2526ac99289cda93399dd4e

執行命令:

ab -n 100 -p token.txt -T 'application/x-www-form-urlencoded' https://url/login/

例如,一個url接受賬戶和密碼的參數進行登錄,login.txt可以寫入:

userName=admin&password=123456

執行命令:

ab -n 100 -p login.txt -T 'application/x-www-form-urlencoded' https://url/login/

(3)如果請求爲get請求,就可以直接寫在url裏面

ab -n 100 https://url/login/?tokenId=be4afc178e5c2526ac99289cda93399dd4e

(4)結果分析

網址是http+ssl的,但是這個ab工具不支持,就直接訪問http網址了,結果如下所示:

Concurrency Level: 併發用戶數

Time taken for tests: 當前完成測試的時間

Complete requests: 完成的請求數量

Requests per second: 吞吐率,這個值越大越好

Time per request: 用戶平均請求等待時間

Time per request(across all concurrent requests): 服務器平均請求等待時間

(5)運行參數文檔

n在測試會話中所執行的請求個數。默認時,僅執行一個請求。

-c一次產生的請求個數。默認是一次一個。

-t測試所進行的最大秒數。其內部隱含值是-n 50000,它可以使對服務器的測試限制在一個固定的總時間以內。默認時,沒有時間限制。

-p包含了需要POST的數據的文件。

-P對一箇中轉代理提供BASIC認證信任。用戶名和密碼由一個:隔開,並以base64編碼形式發送。無論服務器是否需要(即, 是否發送了401認證需求代碼),此字符串都會被髮送。

-T POST數據所使用的Content-type頭信息。

-v設置顯示信息的詳細程度-4或更大值會顯示頭信息,3或更大值可以顯示響應代碼(404,200等),2或更大值可以顯示警告和其他信息。

-V顯示版本號並退出。

-w以HTML表的格式輸出結果。默認時,它是白色背景的兩列寬度的一張表。

-i執行HEAD請求,而不是GET。

-x設置<table>屬性的字符串。

-X對請求使用代理服務器。

-y設置<tr>屬性的字符串。

-z設置<td>屬性的字符串。

-C對請求附加一個Cookie:行。其典型形式是name=value的一個參數對,此參數可以重複。

-H對請求附加額外的頭信息。此參數的典型形式是一個有效的頭信息行,其中包含了以冒號分隔的字段和值的對(如,"Accept-Encoding:zip/zop;8bit")。

-A對服務器提供BASIC認證信任。用戶名和密碼由一個:隔開,並以base64編碼形式發送。無論服務器是否需要(即,是否發送了401認證需求代碼),此字符串都會被髮送。

-h顯示使用方法。

-d不顯示"percentage served within XX [ms] table"的消息(爲以前的版本提供支持)。

-e產生一個以逗號分隔的(CSV)文件,其中包含了處理每個相應百分比的請求所需要(從1%到100%)的相應百分比的(以微妙爲單位)時間。由於這種格式已經“二進制化”,所以比'gnuplot'格式更有用。

-g把所有測試結果寫入一個'gnuplot'或者TSV(以Tab分隔的)文件。此文件可以方便地導入到Gnuplot,IDL,Mathematica,Igor甚至Excel中。其中的第一行爲標題。

-i執行HEAD請求,而不是GET。

-k啓用HTTP KeepAlive功能,即在一個HTTP會話中執行多個請求。默認時,不啓用KeepAlive功能。

-q如果處理的請求數大於150,ab每處理大約10%或者100個請求時,會在stderr輸出一個進度計數。此-q標記可以抑制這些信息。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章