使用Apache對網站的併發請求進行控制,防止網站癱瘓

 由於項目需要, 可能對Web服務的併發請求產生壓力,因此想到了在Apache層進行請求控制的方法.

由於已經有一個mod_limitipconn 可以用來進行併發連接控制, 但由於起用了KeepAlive,因此還需要對併發請求總數進行控制,並對超做併發請求後,把請求重定向到某個頁面的業務需要,因此基於mod_limitipconn,進行修改, 以滿足業務需要.

配置示例如下:

ExtendedStatus On
LoadModule limitipconn_module modules/mod_limitipconn.so
<IfModule mod_limitipconn.c>
    MaxConnPerIP 1000
    <Location /imlogingw>
        MaxConnPerIP 300
#       NoIPLimit image/*
        MaxReqConcurrent 60
        ExceedReqURL http://10.2.224.63/
    </Location>
</IfModule>

 

http://10.2.224.63/imlogingw 這個目錄進行併發控制,當超過閥值(60)之後,把請求重定向到http://10.2.224.63/這個頁面.

 

經過壓力測試, 可以正確使用

 

原始的mod_limitipconn 可以從

http://dominia.org/djao/limitipconn.html 下載, 改進後的mod_limitipconn 可以從

http://limitipconnreq.googlecode.com/files/mod_limitipconn-0.23-jaymo.tar.gz

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章