http學習筆記

http長連接與短連接

長連接短連接操作過程
短連接的操作步驟是:建立連接——數據傳輸——關閉連接...建立連接——數據傳輸——關閉連接
長連接的操作步驟是:建立連接——數據傳輸...(保持連接)...數據傳輸——關閉連接

HTTP的長連接和短連接本質上是TCP長連接和短連接。HTTP屬於應用層協議,在傳輸層使用TCP協議,在網絡層使用IP協議。

在HTTP/1.0中默認使用短連接。也就是說,客戶端和服務器每進行一次HTTP操作,就建立一次連接,任務結束就中斷連接。

而從HTTP/1.1起,默認使用長連接,用以保持連接特性。使用長連接的HTTP協議,會在響應頭加入這行代碼:

Connection:keep-alive

在使用長連接的情況下,當一個網頁打開完成後,客戶端和服務器之間用於傳輸HTTP數據的TCP連接不會關閉,客戶端再次訪問這個服務器時,會繼續使用這一條已經建立的連接。Keep-Alive不會永久保持連接,它有一個保持時間,可以在不同的服務器軟件(如Apache)中設定這個時間。實現長連接需要客戶端和服務端都支持長連接。

服務端要設置http長連接關閉策略

(1)定期向空閒客戶端發送探測報文,確定客戶端狀態,探活失敗則關閉連接

(2)服務端達到最大連接數,關閉空閒時間最長的連接

(3)空閒超時時間,超時即關閉


一般聊天這種頻繁交互的使用長連接,其他普通頁面使用短連接

 

tomcat配置

keepAliveTimeout:表示在下次請求過來之前,tomcat保持該連接多久。這就是說假如客戶端不斷有請求過來,且爲超過過期時間,則該連接將一直保持。
maxKeepAliveRequests:表示該連接最大支持的請求數。超過該請求數的連接也將被關閉(此時就會返回一個Connection: close頭給客戶端)。設置maxKeepAliveRequests爲-1則可以使該連接可以請求無限次數

參考:https://www.cnblogs.com/blogtech/p/10981606.html

              https://blog.csdn.net/u014161595/article/details/84333414

發佈了32 篇原創文章 · 獲贊 2 · 訪問量 6334
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章