歡迎您光臨本站 註冊首頁

調節保持連接(KeepAlive)的設定

←手機掃碼閱讀     火星人 @ 2014-03-03 , reply:0

調節保持連接(KeepAlive)的設定

調節保持連接(KeepAlive)的設定


HTTP 默認行為是在新的連接上請求文件,這會花費許多時間啟動與關閉連接。
使用KeepAlive可以單一連接時進行多個請求,因此可以減少建立socket連接所需要的時間,而又會加快客戶端在請求網頁內容的載入速度。

KeepAlive設定:
KeepAlive On        //啟用KeepAlive 設定
MaxKeepAliveRequests 100        //指定單一連續時間可以允許多少個保持連接的請求
KeepAliveTimeout 15        


KeepAliveTimeout 如何設定最佳值:
在沒有接受其他請求時,KeepAliveTimeout 指定會持續開啟特定連接的時間。
此指令的最佳設定完全視網站的特性而定。

分析:
KeepAliveTimeout 過期前,用戶已點擊下一網頁內容的鏈接而進入下一網頁,他們會在同一連接獲得該文件。
不過,如果該時間過期,他們就需要建立對該下一網頁的伺服器的新連接。
同時,如果用戶從網站下載資源然後離開,Apache 仍然會持續開啟連接KeepAliveTimeout 秒,而在這段時間該子進程無法服務任何其他請求。
因此,KeepAliveTimeout設得太大與太小都不適合。

如果將KeepAliveTimeout設的太大,在server-status里會看到許多進程保持連接狀態卻是空閑的。
如果將KeepAliveTimeout設的太小,則當單一客戶端在短暫的訪問期間請求許多連接時,會產生類似於完全停用 KeepAlive的情況。

因此,在一般情況下,將KeepAliveTimeout 設得太大引起的問題會比設得過小引起的問題小些。


參考文檔:
http://httpd.apache.org/docs/2.2/mod/core.html#keepalive
http://httpd.apache.org/docs/2.2/mod/core.html#keepaliverequests
http://httpd.apache.org/docs/2.2/mod/core.html#keepalivetimeout
《解決方案》

謝謝分享

[火星人 ] 調節保持連接(KeepAlive)的設定已經有661次圍觀

http://coctec.com/docs/service/show-post-1147.html