在一個網站上線前, 一般咱們應該作一些相關的壓力測試, 以便了解當前Web服務器在高併發高負載狀況下的響應情況和速度,方便對Web服務器進行優化和重構。 免費的web壓力測試工具備不少種,例如:Grinder、Pylot、Web Capacity Analysis Tool (WCAT)、fwptt 、JCrawler、Apache JMeter、Siege、http_load等等,而在真實項目中使用作多的是
Apacheab和Webbench
來完成壓力測試。(https://coolshell.cn/articles/2589.html)html
Apache ab作壓力測試linux
優勢:Apache的ab使用很是簡單, 並且只要是安裝了Apache了,就會自帶其ab工具; 缺點:就是不能模擬高併發狀態下的測試, 好像最多能夠模擬100-200次/秒的併發. 若是須要模擬更高負載的壓力測試, 就須要使用Webbench。nginx
webbench作壓力測試c++
優勢: web
① 能測試相同硬件上不一樣服務的性能及不一樣硬件上同一個服務的運行情況;shell
② 它的標準測試能夠向咱們展現服務器的兩項內容:每秒鐘相應請求數和每秒鐘傳輸數據量; 服務器
③ 支持靜態頁面、動態頁面(如:ASP、PHP、JAVA、CGI)、SSL協議的測試能力;併發
④ webbench最多能夠模擬3萬個併發鏈接去測試網站的負載能力;app
缺點: 測試的結果太簡單;socket
## 安裝依賴包 yum install ctags wget apr* autoconf automake gcc gcc-c++ -y ## 下載並安裝webbench工具 wget http://blog.zyan.cc/soft/linux/webbench/webbench-1.5.tar.gz tar fxz webbench-1.5.tar.gz cd webbench-1.5 make && make install
make編譯時報錯:
解決方法: 手工建立目錄
mkdir -m 644 -p /usr/local/man/man1
報錯: make: [tags] Error 127 (ignored)
解決方法: yum install ctags
使用方法
webbench -c 1 -t 30 http://127.0.0.1/index.html
參數說明: -c <併發數> -t < 持續時間>
使用時報錯
錯誤代碼: Connect to server failed. Aborting benchmark.
說明: 鏈接到服務器的socket標識
解決:檢查nginx啓動端口號【指定端口錯誤】