HTTP Keep-Alive,又名 HTTP 持久連接,是一種指令
Keep-Alive是什么以及如何設(shè)置
,它允許單個 TCP 連接為多個 HTTP 請求/響應(yīng)保持打開狀態(tài)。
默認(rèn)情況下,HTTP 連接在每次請求后關(guān)閉。當(dāng)有人訪問您的站點時,他們的瀏覽器需要創(chuàng)建新的連接來請求組成您的網(wǎng)頁的每個文件(例如圖像、Javascript 和 CSS 樣式表),這一過程可能會導(dǎo)致 頁面加載時間過長。
啟用 Keep-Alive 允許您通過單個連接提供所有網(wǎng)頁資源。Keep-Alive 還可以減少服務(wù)器上的 CPU 和內(nèi)存使用量。市場上服務(wù)器眾多,大家可按需選購,給大家推薦小編在用的bluehost服務(wù)器,他們的高性能大內(nèi)存方案還是非常不錯的,使用官方常用優(yōu)惠碼MDD,VPS服務(wù)器最高有五折優(yōu)惠,有需要的朋友可以去看看。
啟用 Keep-Alive
(1)如果您的服務(wù)器上未啟用 Keep-Alive,則可以通過將以下代碼添加到您的 .htaccess 文件來啟用它:
在“Connection Keep-Alive”設(shè)置中,以下兩個參數(shù)會影響他的功能:
1.MaxKeepAliveRequests – 該指令設(shè)置每個保持活動連接的最大請求數(shù)。在確定這個數(shù)字時,需要考慮的是用戶可能想要訪問的網(wǎng)站上的文件數(shù)量。2.KeepAliveTimeout – 該參數(shù)設(shè)置在需要建立新的 TCP 連接之前服務(wù)器應(yīng)等待用戶請求的時間。這個數(shù)值應(yīng)該根據(jù)你的網(wǎng)站被訪問的頻率來設(shè)置,也就是說,高流量的網(wǎng)站最好設(shè)置一個大的數(shù)值來限制 TCP 連接請求的數(shù)量。
(2)如果你的服務(wù)器安裝了WHM面板,你可以通過面板輕易控制Keep-Alive的開啟或關(guān)閉。
首先你需要在WHM面板中找到Apache Configuration,進入Global Configuration
進入后你可以看到控制Keep-Alive的按鈕,選擇On即開啟
在做出更改后記得重啟一下Apache使更改生效噢
Keep-Alive的好處
HTTP Keep-Alive 設(shè)置可以維護客戶端和服務(wù)器之間的連接,減少提供文件所需的時間。持久連接還會減少 TCP 和 SSL/TLS 連接請求的數(shù)量,從而導(dǎo)致往返時間 (RTT)下降 。
建立 TCP 連接首先需要三向傳輸——客戶端和服務(wù)器之間相互交換 SYN 和 ACK 數(shù)據(jù)包,然后才能傳輸數(shù)據(jù)。使用 Keep-Alive 標(biāo)頭意味著不必經(jīng)常執(zhí)行此過程。這將會帶來以下好處:
1.網(wǎng)絡(luò)資源的保護 – 每個客戶端使用單個連接對網(wǎng)絡(luò)資源的負(fù)擔(dān)較小。
2.減少網(wǎng)絡(luò)擁塞 ——減少服務(wù)器和客戶端之間的 TCP 連接數(shù)量可以減少網(wǎng)絡(luò)擁塞。
3.減少延遲 – 減少三向傳輸?shù)臄?shù)量可以改善站點延遲。對于SSL/TLS 連接尤其如此 ,它需要額外的往返來加密和驗證連接。
CDN 和 Keep-Alive 的關(guān)系
Keep-Alive允許 CDN 減少您站點的 RTT,同時仍然提供 SSL/TLS 安全優(yōu)勢。
Imperva CDN 使用 Keep-Alive 在用戶會話之間保持與源服務(wù)器的開放連接,每次持續(xù)幾分鐘 - 只要在連接打開時訪問您的站點,您的 CDN 就不需要參與任何新的 SSL/TLS 協(xié)議。
這將會節(jié)省大量的開銷,這些開銷本來用于每個新用戶嘗試發(fā)起與源的新連接的請求。相反,每個 CDN 代理服務(wù)器都能夠利用其開放連接一次為多個用戶下載資源。