安裝Siege(centos)

安裝Siege(centos)


1.5.1 安裝Siege

可以通過從官方網站www.joedog.org/index/siege-homehttp://freshmeat.net/ projects/siege下載源代碼或者使用存儲庫(如port或aptitude)以及以下所示的命令之一安裝Siege:

  1. sudo port install siege 
或者
  1. sudo aptitude install siege 

使用其中一個命令,Siege將自動安裝所有必需的程序包。在編寫本書時,Siege的最新穩定版本爲2.69。

很遺憾,如果沒有Cygwin,Windows用戶將不能使用Siege。如果你使用的是Windows,請先下載Cygwin並安裝該軟件,然後再嘗試安裝和運行Siege。安裝完Cygwin之後,使用本部分中概述的步驟安裝Siege。

如果你決定使用源代碼安裝,可能會在下載程序包時遇到問題,此時,請打開一個終端窗口並鍵入以下內容。

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

該命令會將此程序包下載到你的系統上。下載完此程序包之後,執行以下命令:

tar xvfz siege-latest.tar.gz

cd siege-2.69/

./configure

make

sudo make install

這些命令將配置源代碼、創建安裝程序包並最終在系統上安裝此程序包。安裝完成後,將你的目錄位置更改爲/usr/local/bin/。你應該會在此目錄中看到Siege腳本。

下面,我們繼續進行並在域www.example.com上運行一個簡單測試,以便查看示例結果。


(注:

-bash: make: command not found的解決辦法

一般出現這個-bash: make: command not found提示,是因爲安裝系統的時候使用的是最小化mini安裝,系統沒有安裝make、vim等常用命令,直接yum安裝下即可。

yum -y install gcc automake autoconf libtool make

直接ssh運行即可,安裝make。


1.5.2 運行Siege

第一個示例是對www.example.com的一個簡單負載測試。與ab一樣,Siege遵循特定的語法格式。

  1. siege [options] [URL] 
使用Siege格式,我們將模擬一個負載測試,5個併發用戶在10秒內訪問網站www.example. com。需要說明一下,使用Siege時的併發被稱爲事務。因此我們要模擬的測試是使用Siege命令讓Web服務器在10秒的時間內一次滿足5個同時發生的事務:
  1. siege -c 5 -t10S http://www.example.com/ 

該命令使用兩個選項標記:併發標記c和時間標記t。使用併發標記,可以通過X(在本例中爲5)個用戶同時訪問網站來測試請求。數字可以是任意數字,只要運行測試的系統可以支持這樣一個任務即可。t標記以秒(S)、分鐘(M)或小時(H)爲單位指定時間,並且數字和字母之間沒有空格。

運行此命令之後,你應該會看到類似於圖1-8的輸出。

 
圖1-8 www.example.com的Siege響應(10秒內5個併發請求)

1.5.3 分析結果

與ab結果一樣,Siege工具的結果也分爲幾個部分。具體來說,結果集有兩個部分需要分析:

單個請求詳細信息;

測試指標。

1. 單個請求詳細信息

單個請求詳細信息部分顯示了該工具創建和運行的所有請求。每一行都代表一個唯一的請求並且包含三列,如圖1-9所示。

 
圖1-9 Siege請求數據

該輸出包含運行的初始Siege命令的請求示例。各列所代表的內容如下:

HTTP響應狀態代碼;

完成請求所需的總時間;

作爲響應所收到的數據總量(不包括標頭數據)。

2. 測試指標

測試指標部分包含有關整個負載測試的信息。表1-4列出並描述了所有字段,你可以仔細查看一下。我們只對Data transferred、Transaction rate、Longest transaction以及Shortest transaction感興趣。我們將重點介紹結果中的這些特定屬性,因爲它們顯示出了優化應用程序的效果。

表1-4  Siege測試指標部分描述

字段名稱

描述

示 例 值

Transactions

已完成的事務總數

102 hits

Availability

能夠請求Web文檔的時間

100.00%

Elapsed Time

完成測試所需的總時間

9.71 secs

Data transferred

響應中數據的總大小

(不包括標頭數據)

0.04M

Response time

整個測試過程中的

平均響應時間

0.02 secs

Transaction rate

每秒要滿足的事務總數

10.50 trans/sec

Throughput

處理數據和響應所需的總時間

0.00 MB/sec

Concurrency

Concurrency是同時連接

的平均數,該
數字升高時服務器性能降低

5

Successful

transactions

整個測試過程中所執行

的成功的事務總數

102

Failed transactions

整個測試過程中遇到的失

敗的事務總數

0

Longest transaction

滿足一個請求所需的最長時間

0.03

Shortest transaction

滿足一個請求所需的最短時間

0.02

Data transferred 部分包含每個請求收到的響應的總大小(以MB爲單位)。Transaction rate幫助我們瞭解當Web服務器在我們命令指定的負載下運行時可以滿足的併發事務數(同時發生的請求)。在本例中,Web服務器在10秒之內5個併發請求的負載下時,Web服務器可以每秒滿足10.50個事務。

Shortest transaction和Longest transaction字段告訴我們滿足一個請求所需的最短時間(以秒爲單位)以及滿足一個請求所需的最長時間(以秒爲單位)。

1.5.4 Siege選項標記

Siege也包含很多可選標記,如果感興趣,可以使用以下命令查看這些標記:

  1. siege -h

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