標籤:live dash 本質 http協議 沒有 ... 記錄 包含 資料資訊
1.HTTP協議的五大特點
1)支援客戶/伺服器模式
2)簡單快速
3)靈活
4)無串連
每次串連只處理一個請求,伺服器處理完客戶的請求,並受到客戶的應答後,中斷連線。
5)無狀態
協議不會記錄伺服器用戶端狀態。
2.保持HTTP串連狀態的兩種方式
1)Cookie
在訪問統一網站時,可以將資訊寫入cookie,方便在不同的頁面間提取資訊。
2)Session
Session儲存在伺服器上,同時將標識Session的SessionId傳遞給用戶端瀏覽器,儲存在cookie中,瀏覽器關閉後,這個cookie就會被清掉。
瀏覽器每次請求都會額外加上這個參數值,伺服器根據這個SessionId,就能取得用戶端的資料資訊。
3.什麼是HTTP長串連,短串連
HTTP的長串連,短串連本質上是TCP長串連,短串連。
在HTTP/1.0中,預設使用的是短串連。
即瀏覽器和伺服器每進行一次HTTP操作,就建立一次串連,任務結束就中斷串連。這樣,如果一個網頁中包含其他的web資源,如JavaScript檔案,影像檔,CSS檔案等,都需要建立串連。
從HTTP/1.1起,預設使用長串連。我們可以看到回應標頭有這樣一行代碼:Connection:keep-alive
當一個網頁開啟完成後,用戶端和伺服器之間用於傳輸HTTP資料的TCP串連不會關閉,如果用戶端再次訪問這個伺服器上的網頁,會繼續使用這條已經建立的串連。
4.長串連短串連操作過程
短串連的操作步驟是:
建立串連——資料轉送——關閉串連...建立串連——資料轉送——關閉串連
長串連的操作步驟是:
建立串連——資料轉送...(保持串連)...資料轉送——關閉串連
5.長串連短串連的優缺點
長串連可以省去較多的TCP建立和關閉的操作,減少浪費,節約時間。對於頻繁請求資源的客戶來說,較適用長串連。
Client與server之間的串連如果一直不關閉的話,會存在一個問題,隨著用戶端串連越來越多,server早晚有扛不住的時候,這時候server端需要採取一些策略,如關閉長時間沒有讀寫事件的串連;限制每個用戶端的最大長串連數。
短串連對伺服器來說管理較為簡單,存在的串連都是有用的串連。但如果客戶請求頻繁,將在TCP的建立和關閉上浪費時間和頻寬。
6.長串連短串連使用場合
長串連多用於操作頻繁,點對點的通訊,而且串連數不能太多情況。如資料庫的串連。
而像web網站的http服務一般用短串連,因為長串連對於服務端來說會耗費一定的資源,而像web網站這麼頻繁的成千上萬甚至上億用戶端的串連用短串連更省資源,如果用長串連,而且同時有成千上萬的使用者。如果每個使用者都佔用一個串連的話,那可想而知吧。所以並發量大,但每個使用者無需頻繁操作的情況下用短串連好。
HTTP長串連和短串連