webbench是乙個非常簡單的壓力測試工具,webbench最多可以模擬3萬個併發連線去測試**的負載能力。
(1)webbench安裝
(2)webbench使用
webbench - c 併發數 - t 執行測試時間 url
(3)測試結果
另外我想到的測試方法就是,自己寫shell指令碼,呼叫wget或者curl來自定義測試
既然webbench可以用於壓力測試,也就可以用來攻擊web服務,nginx也有相應的方法來處理這種攻擊:
apache與nginx可以通過http_user_agent這個系統變數來做處理
apache新增rewrite規則:
不知道[nc] [f]什麼意思的可以看我另乙個 部落格
nginx在server裡新增判斷
if( $http_user_agent ~ "webbench(.*)")我們再看下日誌
全部都403了,網頁開啟還算可以,負載也降了不少,但是還是會有一些開銷。
再記錄幾個其它的壓力測試工具:
類似於ab,webbench,jmeter等這種壓力測試工具,也是一種攻擊方式,通過製造大量的併發請求,耗盡伺服器資源。
對於一般中小型**,很可能一句 webbench -c 30000 -t 500 http://hostname/就能讓伺服器掛掉.
該如何防禦?
原理是通過http_user_agent 來判斷。
apache ab的http_user_agent 為apachebench
webbench的http_user_agent 為webbench
我的機器的配置:國外vps 單核1g記憶體
下面直接貼nginx配置
web伺服器 併發web伺服器實現 epoll
在linux的網路程式設計中,很長的時間都在使用select來做事件觸發。在linux新的核心中,有了一種替換它的機制,就是epoll。epoll 是當今 linux 系統採用的方式,一般伺服器都是用 epoll 來實現的。epoll 是一種方案,這種方案不使用多程序多執行緒多協程,而是使用單程序單...
web伺服器監控工具
監控你的web伺服器或者web主機執行是否正常與健康是非常重要的。你要確保使用者始終可以開啟你的 並且網速不慢。伺服器監控工具允許你收集和分析有關你的web伺服器的資料。performance co pilot,簡稱 pcp,是乙個系統效能和分析框架。它從多個主機整理資料並實時的分析,幫你識別不正常...
如何提高伺服器併發處理能力
以下內容為入門級介紹,意在對老技術作較全的總結而不是較深的研究。主要參考 構建高效能web站點 一書。一台伺服器在單位時間裡能處理的請求越多,伺服器的能力越高,也就是伺服器併發處理能力越強 吞吐率,單位時間裡伺服器處理的最大請求數,單位req s 從伺服器角度,實際併發使用者數的可以理解為伺服器當前...