linux 下ab壓力測試

2022-05-05 03:57:13 字數 2654 閱讀 8283

linux 下ab壓力測試

1.ab的簡介

ab是apachebench命令的縮寫。

ab是apache自帶的壓力測試工具。ab非常實用,它不僅可以對apache伺服器進行**訪問壓力測試,也可以對或其它型別的伺服器進行壓力測試。比如nginx、tomcat、iis等

2.ab的原理

ab的原理:ab命令會建立多個併發訪問執行緒,模擬多個訪問者同時對某一url位址進行訪問。它的測試目標是基於url的,因此,它既可以用來測試apache的負載壓力,也可以測試nginx、lighthttp、tomcat、iis等其它web伺服器的壓力。

ab命令對發出負載的計算機要求很低,它既不會占用很高cpu,也不會占用很多記憶體。但卻會給目標伺服器造成巨大的負載,其原理類似cc攻擊。自己測試使用也需要注意,否則一次上太多的負載。可能造成目標伺服器資源耗完,嚴重時甚至導致宕機。

3.ab的安裝

4.ab的引數說明

-n在測試會話中所執行的請求個數。預設時,僅執行乙個請求。請求的總數量

-c一次產生的請求個數。預設是一次乙個。請求的使用者量

-t測試所進行的最大秒數。其內部隱含值是-n 50000,它可以使對伺服器的測試限制在乙個固定的總時間以內。預設時,沒有時間限制。

-v顯示版本號並退出。

5.效能指標

5.1吞吐量(requests per second)

複製**

伺服器併發處理能力的量化描述,單位是reqs/s,指的是在某個併發使用者數下單位時間內處理的請求數。某個併發使用者數下單位時間內能處理的最大請求數,稱之為最大吞吐率。

記住:吞吐率是基於併發使用者數的。這句話代表了兩個含義:

a、吞吐率和併發使用者數相關

b、不同的併發使用者數下,吞吐率一般是不同的

計算公式:總請求數/處理完成這些請求數所花費的時間,即

request per second=complete requests/time taken for tests

必須要說明的是,這個數值表示當前機器的整體效能,值越大越好。

複製**

5.2 併發連線數(the number of concurrent connections)

併發連線數指的是某個時刻伺服器所接受的請求數目,簡單的講,就是乙個會話。
5.3 併發使用者數(concurrency level)

要注意區分這個概念和併發連線數之間的區別,乙個使用者可能同時會產生多個會話,也即連線數。在http/1.1下,ie7支援兩個併發連線,ie8支援6個併發連線,firefox3支援4個併發連線,所以相應的,我們的併發使用者數就得除以這個基數。

5.4 使用者平均請求等待時間(time per request)

ab的命令引數比較多,我們經常使用的是-c和-n引數。

ab -c 10 -n 100  :同時處理100個請求並執行10次index.php

-c10表示併發使用者數為10

-n100表示請求總數為100

複製**

[root@vic html]# ab -c 10 -n 100

licensed to the apache software foundation,

benchmarking www.myvick.cn (be patient).....done

server software: nginx/1.13.6 #測試伺服器的名字

server hostname: www.myvick.cn #請求的url主機名

server port: 80 #web伺服器監聽的埠

document path: /index.php   #請求的url中的根絕對路徑,通過該檔案的字尾名,我們一般可以了解該請求的型別

document length: 799 bytes #http響應資料的正文長度

connection times (ms)

min mean[+/-sd] median max

connect: 1 2 0.7 2 5

processing: 2 26 81.3 3 615

waiting: 1 26 81.3 3 615

total: 3 28 81.3 6 618

percentage of the requests served within a certain time (ms)

50% 6

66% 6

75% 7

80% 7

90% 10

95% 209

98% 209

99% 618

100% 618 (longest request)

複製**

7 nginx和apache對比

nginx效能確實比apache效能高。nginx的吞吐量大於apache的,吞吐量越大越好

參考資料:

linux之ab壓力測試

ab命令格式 ab命令放在apache目錄bin目錄下面,使用方法如下 ab n 3000 c 3000 此為伺服器下測試的頁面位址 其中 n代表每次併發量,c代表總共傳送的數量 2 測試結果分析 document path 請求的資源 document length 50679 bytes 文件返...

Linux壓力測試命令ab

ab是apachebench命令的縮寫。ab是apache自帶的壓力測試工具。ab非常實用,它不僅可以對apache伺服器進行 訪問壓力測試,也可以對或其它型別的伺服器進行壓力測試。比如nginx tomcat iis等 ab的原理 ab命令會建立多個併發訪問執行緒,模擬多個訪問者同時對某一url位...

ab 壓力測試

apache自帶的ab的壓力測試 以前安裝好apache總是不知道該如何測試apache的效能,現在總算找到乙個測試工具了。就是apache自帶的測試工具ab apache benchmark 在apache的bin目錄下。格式 ab options http hostname port path ...