效能測試之siege
一、siege介紹
Siege是一個壓力測試和評測工具,設計用於WEB開發這評估應用在壓力下的承受能力:可以根據配置對一個WEB站點進行多使用者的併發訪問,記錄每個使用者所有請求過程的相應時間,並在一定數量的併發訪問下重複進行。
Siege是一個多執行緒http ofollow,noindex" target="_blank">負載測試 和 基準測試 工具。
Siege:這是 Linux%E7%B3%BB%E7%BB%9F" rel="nofollow,noindex" target="_blank">Linux系統 下的一個測試工具,完全使用C語言實現,可以對HTTP和 FTP%E6%9C%8D%E5%8A%A1%E5%99%A8" rel="nofollow,noindex" target="_blank">FTP伺服器 進行負載和 效能測試 。通過使用Siege 提供的功能,可以很容易的制定 測試計劃 :包括規定使用 併發使用者數 、重複數量,從而可以模擬在伺服器、網路或者其它物件上附加負載以測試他們提供服務的受壓能力,方便的測試伺服器的效能。最後,利用Siege提供的測試結果來分析效能指標或者分析他們提供的服務在不同負載條件下的效能情況,分析測試結果,找出影響系統性能的瓶頸。
二、siege安裝
本次環境基於Ubuntu系統root使用者
使用 apt-get siege 下載安裝siege。
使用 siege -h 檢測是否安裝成功(出現如圖介面則安裝成功)
三、siege的簡單使用
-R: 指定用特定的siege配置檔案來執行
-c: 模擬有N個使用者在併發訪問(ps:如果WEB伺服器為apache的話,請不要將併發連線數設定超過200)
-r: 重複測試執行N次
-i: 隨機訪問-f指定的url.txt中的url列表項,以此模擬真實的訪問情況(隨機性)
-b: 進行壓力測試,不進行延時
-A: 指定訪問的user-agent
-f: 任務的URL列表
...
實戰:
目標url:http://192.168.1.126/ecshop/
50個使用者在併發訪問
重複執行2次
結果分析:
Transactions: 完成了總的點選數
Availability: 事物的成功率
Elapsed time: 測試使用時間
Data transferred: 每個使用者的傳輸資料量
Response time: 平均響應時間
Transaction rate: 伺服器每秒處理事務的平均數
Throughput: 吞吐量
Concurrency: 實際最高併發連線數
Successful transactions: 成功事物數
Failed transactions: 失敗事物數
Longest transaction: 最長的事務處理時間
Shortest transaction: 最短的事務處理時間