新聞中心
apache Bench 簡介
Apache Bench 是 Apache 服務器自帶的一個web壓力測試工具,簡稱 ab 。

十余年的肇慶網(wǎng)站建設(shè)經(jīng)驗,針對設(shè)計、前端、開發(fā)、售后、文案、推廣等六對一服務,響應快,48小時及時工作處理。成都全網(wǎng)營銷推廣的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整肇慶建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計,從而大程度地提升瀏覽體驗。創(chuàng)新互聯(lián)從事“肇慶網(wǎng)站設(shè)計”,“肇慶網(wǎng)站推廣”以來,每個客戶項目都認真落實執(zhí)行。
ab 非常實用,它不僅可以對apache服務器進行網(wǎng)站訪問壓力測試,也可以對或其它類型的服務器進行壓力測試。比如nginx、tomcat、IIS等
ab的原理
ab的原理:ab命令會創(chuàng)建 多個并發(fā) 訪問線程,模擬 多個訪問者 同時對某一 URL地址 進行訪問。
它的測試目標是基于URL的,因此,它既可以用來測試apache的負載壓力,也可以測試nginx、lighthttp、tomcat、IIS等其它Web服務器的壓力。
ab是一個命令行工具, ab命令對發(fā)出負載的計算機要求很低,它既不會占用很高CPU,也不會占用很多內(nèi)存。但卻會給目標服務器造成巨大的負載,其原理類似CC攻擊。自己測試使用也需要注意,否則一次上太多的負載。可能造成目標服務器資源耗完,嚴重時甚至導致死機。
總的來說ab工具小巧簡單,上手學習較快,可以提供需要的基本性能指標,但是沒有圖形化結(jié)果,不能監(jiān)控。
對于想快速進行壓力測試的同學來說,apache ab是一個簡單好用的工具,下面簡單介紹一下它的使用方法。
官網(wǎng): https://httpd.apache.org/docs/2.0/programs/ab.html
ab的安裝
# 安裝
#yum -y install httpd-tools
apt-get install apache2-utils
# 檢查是否成功
ab -v
參數(shù)介紹
格式:ab [options] [http://]hostname[:port]/path
下面是參數(shù)
-n requests Number of requests to perform //本次測試發(fā)起的總請求數(shù)
-c concurrency Number of multiple requests to make //一次產(chǎn)生的請求數(shù)(或并發(fā)數(shù))
-t timelimit Seconds to max. wait for responses //測試所進行的最大秒數(shù),默認沒有時間限制。
-r Don't exit on socket receive errors. // 拋出異常繼續(xù)執(zhí)行測試任務
-p postfile File containing data to POST //包含了需要POST的數(shù)據(jù)的文件,文件格式如“p1=1&p2=2”.使用方法是 -p 111.txt-T content-type Content-type header for POSTing
// POST 數(shù)據(jù)所使用的 Content-type 頭信息,如 -T “application/x-www-form-urlencoded” 。 (配合-p)-v verbosity How much troubleshooting info to print
//設(shè)置顯示信息的詳細程度 – 4或更大值會顯示頭信息, 3或更大值可以顯示響應代碼(404, 200等), 2或更大值可以顯示警告和其他信息。 -V 顯示版本號并退出。-C attribute Add cookie, eg. -C “c1=1234,c2=2,c3=3” (repeatable)
//-C cookie-name=value 對請求附加一個Cookie:行。 其典型形式是name=value的一個參數(shù)對。此參數(shù)可以重復,用逗號分割。
提示:可以借助session實現(xiàn)原理傳遞 JSESSIONID參數(shù), 實現(xiàn)保持會話的功能,如-C ” c1=1234,c2=2,c3=3, JSESSIONID=FF056CD16DA9D71CB131C1D56F0319F8″ 。-w Print out results in HTML tables //以HTML表的格式輸出結(jié)果。默認時,它是白色背景的兩列寬度的一張表。
-i Use HEAD instead of GET
ab測試案例
ab -n 5000 -c 200 http://localhost/index.php
ab -n 1000 -c 100 -w http://localhost/index.php >>d:miss.html
ab -n 1000 -c 100 -p request_json.txt -T ‘a(chǎn)pplication/json’ ‘http://192.168.0.101:8088/api/event/annotationEvent’
示例2
參數(shù)很多,一般我們用 -n 和 -c 參數(shù)就可以了。例如:
abs.exe -n 100 -c 20 測試網(wǎng)址
- -n 后面的100,表示總共發(fā)出100 個請求;
- -c 后面的20 ,表示采用20 個并發(fā)(模擬 20 個人同時訪問),
后面的網(wǎng)址表示測試的目標URL。
對百度進行簡單的壓力測試: abs.exe -n 100 -c 20 https://www.baidu.com/
運行結(jié)果:
- Document Path:測試頁面
- Document Length: 頁面大小
- Concurrency Level: 測試的并發(fā)數(shù)
- Time taken for tests:整個測試持續(xù)的時間
- Complete requests:完成的請求數(shù)量
- Failed requests: 失敗的請求數(shù)量
- Total transferred: 整個過程中的網(wǎng)絡(luò)傳輸量
- HTML transferred: 整個過程中的HTML內(nèi)容傳輸量
- Requests per second: 最重要的指標之一,相當于LR中的每秒事務數(shù),后面括號中的mean表示這是一個平均值
- Time per request: 最重要的指標之二,相當于LR中的平均事務響應時間,后面括號中的mean表示這是一個平均值
- Time per request: 每個連接請求實際運行時間的平均值
- Transfer rate: 平均每秒網(wǎng)絡(luò)上的流量,可以幫助排除是否存在網(wǎng)絡(luò)流量過大導致響應時間延長的問題
到此這篇關(guān)于Apache自帶的ab壓力測試工具的實現(xiàn)的文章就介紹到這了,更多相關(guān)Apache ab壓力測試工具內(nèi)容請搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!
Linux 技術(shù)文檔 操作系統(tǒng)
數(shù)據(jù)庫運維技術(shù)服務 ? Apache自帶的ab壓力測試工具的實現(xiàn)
LinuxSA 普通
分享到:
成都創(chuàng)新互聯(lián)科技有限公司,經(jīng)過多年的不懈努力,公司現(xiàn)已經(jīng)成為一家專業(yè)從事IT產(chǎn)品開發(fā)和營銷公司。廣泛應用于計算機網(wǎng)絡(luò)、設(shè)計、SEO優(yōu)化、關(guān)鍵詞排名等多種行業(yè)!
當前文章:Apache自帶的ab壓力測試工具的實現(xiàn)
瀏覽路徑:http://fisionsoft.com.cn/article/dpjidoj.html


咨詢
建站咨詢
