小而美:Web服務(wù)器負(fù)載測(cè)試工具Siege
譯文您了解Siege嗎?本文為您介紹Web服務(wù)器負(fù)載測(cè)試工具Siege,希望對(duì)您有所幫助。
Siege簡(jiǎn)介
Siege是一款基準(zhǔn)測(cè)試和負(fù)載測(cè)試藈,可用于測(cè)量網(wǎng)站服務(wù)器在面臨巨大壓力下的性能。Siege可以執(zhí)行下列測(cè)試:
•傳輸?shù)臄?shù)據(jù)量。
•服務(wù)器的響應(yīng)時(shí)間。
•傳輸速率。
•吞吐量。
•并發(fā)性。
•程序返回OK的次數(shù)。
Siege提供了三種操作模式:
•遞歸。
•互聯(lián)網(wǎng)模擬。
•蠻力。
注意:本文僅針對(duì)Debian和Ubuntu服務(wù)器。
1: 在安裝任何新程序之前,先更新你的服務(wù)器:
sudo apt-get update && sudo apt-get upgrade --show-upgraded
2: 從Siege的官方網(wǎng)站下載***版本的Siege:
wget http://download.joedog.org/siege/siege-3.1.0.tar.gz
3: 對(duì)文件進(jìn)行解壓縮:
tar -zxvf siege-latest.tar.gz
4: 進(jìn)入到Siege目錄:
cd siege-*/
5: 在配置之前,要是GNU編譯器庫(kù)(gcc)還沒(méi)有安裝,立即安裝它:
sudo apt-get install build-essential
6: 配置和完成安裝過(guò)程:
./configure
make
sudo make install
7: 生成配置文件:
siege.config
8: 之后,打開(kāi)位于主目錄下的.siegerc文件。
9: 默認(rèn)情況下,Siege配置建議在1分鐘的時(shí)間段內(nèi)支持25個(gè)并發(fā)用戶。為你的日志文件選擇一個(gè)位置。去掉下面所示的變量前面的注釋;另外你想要其他任何的注釋設(shè)置,別忘了去掉井字號(hào)(#):
…
#
# 變量聲明。你可以在此設(shè)置變量
# 用于下列指令。例子:
# PROXY = proxy.joedog.org
# ${}或$()里面的參考變量,例子:
# proxy-host = ${PROXY}
# 你還可以引用ENVIRONMENT變量,
# 不用實(shí)際聲明變量,例子:
logfile = $(HOME)/siege.log
…
#
# 模擬并發(fā)用戶的默認(rèn)數(shù)量
# ex: concurrent = 25
#
concurrent = 25
#
# siege的默認(rèn)持續(xù)時(shí)間。右邊變量有一個(gè)修飾符
# 指定了時(shí)間單位,H=小時(shí),M=分鐘和S=秒鐘。
# 如果修飾符未加以指定,那么假設(shè)時(shí)間單位是分鐘。
# ex: time = 50M
#
time = 1M
如何運(yùn)行Siege?
終于,現(xiàn)在你可以隨時(shí)運(yùn)行Siege了!
想運(yùn)行Siege,輸入下面這個(gè)命令,把www.example.com換成你的IP地址或域名。
siege www.example.com
輸出結(jié)果
** SIEGE 2.70
** Preparing 25 concurrent users for battle.
The server is now under siege...
Lifting the server siege... done.
Transactions: 2913 hits
Availability: 100.00 %
Elapsed time: 59.51 secs
Data transferred: 0.41 MB
Response time: 0.00 secs
Transaction rate: 48.95 trans/sec
Throughput: 0.01 MB/sec
Concurrency: 0.04
Successful transactions: 2913
Failed transactions: 0
Longest transaction: 0.01
Shortest transaction: 0.00
FILE: /var/log/siege.log
You can disable this annoying message by editing
the .siegerc file in your home directory; change
the directive 'show-logfile' to false.
Siege的命令和進(jìn)一步配置
如果可用性仍保持100%,也沒(méi)有失效連接,那么這表明你沒(méi)有遇到任何問(wèn)題。
URL文件創(chuàng)建
如果你想要測(cè)試網(wǎng)站數(shù)量,可以配置該工具,從urls.txt讀取。
1: 打開(kāi)位于/usr/local/etc/urls.txt處的urls.txt文件。為該文件添加域名、頁(yè)面或IP地址。
# 需要siege的URLS文件
# --
# 用下列任何一種格式對(duì)URL條目進(jìn)行格式化:
# http://www.whoohoo.com/index.html
# http://www/index.html
# www/index.html
# http://www.whoohoo.com/cgi-bin/howto/display.cgi?1013
# 為需要它的頁(yè)面使用POST指令:
# http://www.whoohoo.com/cgi-bin/haha.cgi POST ha=1&ho=2
# 或者POST來(lái)自文件的內(nèi)容:
# http://www.whoohoo.com/melvin.jsp POST
# http://www.whoohoo.com/melvin.jsp POST <./haha
# 你還可以設(shè)置和引用該文件里面的變量,
# 想了解更多信息,參閱urls_txt
# -------------------------------------------------------
www.example.com
www.example.org
321.54.13.98
2: 想使用上述文件來(lái)運(yùn)行Siege,輸入下面這個(gè)命令siege。
siege
3: 想換個(gè)文件,輸入下面這個(gè)命令。
siege -f your/file/path.txt
想了解關(guān)于Siege及其命令的更多信息,請(qǐng)?jiān)L問(wèn)官方網(wǎng)站:https://www.joedog.org/siege-home/。
原文標(biāo)題:Web Server Load Testing Tool: Siege