【OpenSource】--Web Bench 1.5

【簡介】linux下開源軟件webbench-1.5簡介php

 Web Bench is very simple tool for benchmarking WWW or proxy servers. Uses fork() for simulating multiple clients and can use HTTP/0.9-HTTP/1.1 requests. This benchmark is not very realistic, but it can test if your HTTPD can realy handle that many clients at once (try to run some CGIs) without taking your machine down. Displays pages/min and bytes/sec. Can be used in more aggressive mode with -f switch. html

Web Bench 是一款很是簡單的測試網站服務器或代理服務器的工具,利用linux下的fork()函數產生多個子進程,模擬多個客戶端進行壓力測試。能夠發送http/0.9-http/1.1類型的請求。該軟件可測試一個網站的多用戶壓力訪問問題。經過pages/min 和 bytes/sec兩個參數反應網站的性能,而且又多種選擇模式。返回兩項內容:每秒鐘相應請求數和每秒鐘傳輸數據量。webbench不但能具備靜態頁面的測試能力,還能對動態頁面(ASP,PHP,JAVA,CGI)進行測試的能力。還有就是他支持對含有SSL的安全網站例如電子商務網站進行靜態或動態的性能測試。linux

官方網站: http://home.tiscali.cz/~cz210552/webbench.htmlweb

下載地址:$ wget http://home.tiscali.cz/~cz210552/distfiles/webbench-1.5.tar.gz

解壓文件:tar xzvf webbench-1.5.tar.gz //vxzf:-z 是配合解壓.gz的  -x 解開一個包文件 -v 顯示詳細信息  -f 必須,表示使用歸檔文件// 將壓縮包解壓到主文件夾下 ubuntu

進入工程:cd webbench-1.5安全

編譯安裝:sudo make && make install
服務器

可能遇到問題:
併發

1.提示ctags命令解析不了:sudo apt-get install ctags  //提示安裝exuberant-ctags[ubuntu12.04]函數

2.沒法建立普通文件"/usr/local/bin/webbench":權限不夠:工具

  2.1根目錄下進入usr: cd /usr/  2.2 修改local文件夾權限:sudo chmod a+w -R local/

【壓力測試】運行webbench

1.運行: cd webbench1.5  ./webbench

2.webbench [option]... URL

  -f|--force               Don't wait for reply from server.//不等待服務器返回數據
  -r|--reload              Send reload request - Pragma: no-cache.
  -t|--time <sec>          Run benchmark for <sec> seconds. Default 30.//-h指定運行時間
  -p|--proxy <server:port> Use proxy server for request.//使用代理服務器請求
  -c|--clients <n>         Run <n> HTTP clients at once. Default one.//指定多少多少用戶併發執行
  -9|--http09              Use HTTP/0.9 style requests.//不一樣的協議選項
  -1|--http10              Use HTTP/1.0 protocol.
  -2|--http11              Use HTTP/1.1 protocol.
  --get                    Use GET request method.
  --head                   Use HEAD request method.
  --options                Use OPTIONS request method.
  --trace                  Use TRACE request method.
  -?|-h|--help             This information.
  -V|--version             Display program version.

【指令】webbench -c 100 -t 10 http://www.baidu.com/  //100個客戶端,10s內運行

【結果】Webbench - Simple Web Benchmark 1.5 Benchmarking: GET http://www.baidu.com/

    10 clients, running 10 sec.
     Speed=390 pages/min, 468967 bytes/sec.
[轉載]

舉個查看每分種處理多少pages的測試例子,計劃壓力測試2小時:
方法是使用Web Bench進行併發壓力測試,選擇的頁面是phpinfo.php,併發請求開始5個,每次循環增長5個進入下輪的循環,每一輪循環持續180s,到達最大200個併發時結束。這樣就能夠持續作2小時的測試。

[root@hexuweb102 webbench-1.5]$ for n in `seq 5 5 50` ; do echo -n $n " " ; webbench -c $n -t 60 http://127.0.0.1/phpinfo.php 2>/dev/null | grep Speed | awk '{print $1}' | awk -F= '{print $2}' ; echo ; done

# 能夠獲得下面數據:
clints Pages/Min
5 6824
10 6888
15 6849
20 6867
25 6892
30 6865
35 6846
40 6739
45 6699
50 6880
55 6831
60 6861
65 6847
70 6852
75 6818
80 6813
85 6858
90 6825
95 6840
100 6893
100 6871
105 6858
110 6890
115 6866
120 6893
125 6912
130 6857
135 6892
140 6874
145 6868
150 6891
155 6862
160 6893
165 6877
170 6872
175 6899
180 6855
185 6900
190 6882
195 6890
200 6904

[轉載補充]

  一、壓力及性能測試工做應該放到產品上線以前,而不是上線之後;   二、測試時併發應當由小逐漸加大,好比並發100時觀察一下網站負載是多少、打開頁面是否流暢,併發200時又是多少、網站打開緩慢時併發是多少、網站打不開時併發又是多少;   三、更詳細的進行某個頁面測試,如電商網站能夠着重測試購物車、推廣頁面等,由於這些頁面佔整個網站訪問量比重較大。

  備註:webbench 作壓力及性能測試時,該軟件自身也會消耗CPU和內存資源,爲了測試準確,建議將 webbench 安裝在其餘的服務器上,已達到測試數據更加精確。
相關文章
相關標籤/搜索