Apache提供了一個免費的工具(ApacheBench )來讓我們測試網站的承受壓力程度,
不過ApacheBench 僅能提供對單一URL進行測試,但是真正的情況下,
可能是同時很多個user連結不同的url,ApacheBench 並不能做到這樣的test
但可以利用它來test會耗費較多效能的程式,來看看該網頁程式的承受程度。
所以其實ApacheBench 是無法去模擬真實的狀況,沒辦法,It's free!
OK,來開始說明吧。
只要您有安裝Apache,那麼也一定會有ApacheBench ,
就在/apache安裝目錄/bin/ab.exe
我們可以到官網來看使用說明
也可以直接下個command來看所有的使用參數說明
ab.exe -h
這裡就不作詳細的參數說明,大家可以到官網觀看。
這裡舉個例子
ab -n 100 http://www.google.com/
注意: 如果不是指定某page,一定要以/為結尾,如果是指定到page就不用了。
參數-n意思是 對該網站發出幾次request
下了該command以後
會response一長串的資訊
我們只要看到幾個重要性的指標就好
首先先看到兩個指標Complete requests、Failed requests
Complete requests :完成的request次數
Failed requests :失敗的次數
如果失敗的次數太高,代表著該網站同一時間能承受的request數量不能太高。
然後再看到Connection Times:進行stress testing時的處理時間
Connection Times (ms)
min mean[+/-sd] median max
Connect: 17 33 62.9 22 421
Processing: 20 40 86.1 25 688
Waiting: 19 35 71.8 25 688
Total: 39 73 104.9 47 709
connect:是我們發出request,一直到server收到request的時間
processing:是request後,一直到server response這期間的時間
waiting:發出request以後,一直到收到response第一個byte的時間
total:就是connect+processing
我們大概可以從Complete requests、Failed requests、Connection Times 這幾個指標來衡量一隻程式能承受的壓力程度。