Siege 一個linux下的壓力測試工具

來源:互聯網
上載者:User

Siege(英文意思是圍攻)是一個壓力測試和評測工具,設計用於WEB開發這評估應用在壓力下的承受能力:可以根據配置對一個WEB網站進行多使用者的並發訪問,記錄每個使用者所有請求過程的相應時間,並在一定數量的並發訪問下重複進行。

最早使用的壓力測試工具是apache的ab(apache benchmark),apache ab做重複壓力測試不錯,但是每次只能測試一個連結,如何測試一組連結(比如從日誌中匯出的1個小時的日誌,做真實壓力測試),後來找到了這個:

Siege是一個壓力測試和評測工具,設計用於WEB開發這評估應用在壓力下的承受能力:可以根據配置對一個WEB網站進行多使用者的並發訪問,記錄每個使用者所有請求過程的相應時間,並在一定數量的並發訪問下重複進行。

SIEGE is an http regressive testing and benchmarking utility. It was designed to let web developers measure the performance of their code under duress, to see how it will stand up to load on the internet. It lets the user hit a webserver with a configurable number of concurrent simulated users. Those users place the webserver "under siege." The duration of the siege is measured in transactions, the sum of simulated users and the number of times each simulated user repeats the process of hitting the server. Thus 20 concurrent users 50 times is 1000 transactions, the length of the test.

下載/安裝

Siege時一個開放原始碼項目:http://www.joedog.org

下載:

wget ftp://sid.joedog.org/pub/siege/siege-latest.tar.gz

安裝:

%./configure ; make

#make install

siege包含了一組壓力測試工具:

SIEGE (1) Siege是一個HTTP壓力測試和評測工具.

使用範例:

工作清單:www.chedong.com.url檔案

http://www.chedong.com/tech/

http://www.chedong.com/tech/acdsee.html

http://www.chedong.com/tech/ant.html

http://www.chedong.com/tech/apache_install.html

http://www.chedong.com/tech/awstats.html

http://www.chedong.com/tech/cache.html

http://www.chedong.com/tech/click.html

http://www.chedong.com/tech/cms.html

http://www.chedong.com/tech/compress.html

http://www.chedong.com/tech/cvs_card.html

http://www.chedong.com/tech/default.html

http://www.chedong.com/tech/dev.html

http://www.chedong.com/tech/gnu.html

....

siege -c 20 -r 2 -f www.chedong.com.url

參數說明:

-c 20 並發20個使用者

-r 2 重複迴圈2次

-f www.chedong.com.url 工作清單:URL列表

輸出範例:

** Siege 2.59

** Preparing 20 concurrent users for battle. 這次"戰鬥"準備了20個並發使用者

The server is now under siege.. done. 服務在"圍攻"測試中:

Transactions: 40 hits 完成40次處理

Availability: 100.00 % 成功率

Elapsed time: 7.67 secs 總共用時

Data transferred: 877340 bytes 共資料轉送:877340位元組

Response time: 1.65 secs 相應用時1.65秒:顯示網路連接的速度

Transaction rate: 5.22 trans/sec 平均每秒完成5.22次處理:表示伺服器幕後處理的速度

Throughput: 114385.92 bytes/sec 平均每秒傳送資料:114385.92位元組

Concurrency: 8.59 最高並發數 8.59

Successful transactions: 40 成功處理次數

Failed transactions: 0 失敗處理次數

注意:由於速度很快,可能會達不到並發速度很高就已經完成。Response time顯示的是測試機器和被測試伺服器之間網路連結狀況。Transaction rate則表示伺服器端任務處理的完成速度。

協助工具輔助:

增量壓力測試:

為了方便增量壓力測試,siege還包含了一些協助工具輔助:

bombardment (1)

是一個協助工具輔助:用於按照增量使用者壓力測試:

使用範例:

bombardment urlfile.txt 5 3 4 1

初始化URL列表:urlfile.txt

初始化為:5個使用者

每次增加:3個使用者

運行:4次

每個用戶端之間的延遲為:1秒

輸出成CSV格式:

siege2csv.pl (1)

siege2csv.pl將bombardment的輸出變成CSV格式:

Time Data Transferred Response Time Transaction Rate Throughput Concurrency Code 200 (note that this is horribly broken.)

242 60.22 603064 0.02 4.02 10014.35 0.08

605 59.98 1507660 0.01 10.09 25136.05 0.12

938 59.98 2337496 0.02 15.64 38971.26 0.26

1157 60 2883244 0.04 19.28 48054.07 0.78

參考:

開源測試載入器:http://www.opensourcetesting.org/performance.php

壓力測試工具:HammerHead 正在試用中

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.