HTTP1 1優化和HTTP2的優化

2021-10-10 18:53:05 字數 437 閱讀 5459

通過管道技術,在乙個tcp連線中,傳送多個http請求,不需要等待伺服器端對前乙個請求的響應之後,再傳送下乙個請求,但是伺服器端在響應時,要嚴格按照接收請求的順序傳送,即先接收到的請求,需要先傳送其響應,客戶端瀏覽器也是如此,接收響應的順序要按照自己傳送請求的順序來。

隊首阻塞問題:

如果前面收到的乙個請求,在伺服器端處理的時間很長,生成響應需要很多時間,那麼對於後面的已經處理完生成響應的請求來說,它們只能阻塞等待,等待前面的響應傳送完後,自己才能被傳送出去(即使該請求的響應已經生成),造成了「隊首阻塞」問題。

阻塞發生在伺服器端,雖然伺服器端並行接收了多個請求,也並行處理生成多個響應,但由於要遵守http/1.1的規則,先接收到的請求需要先傳送響應,造成了阻塞問題。

多個tcp連線的優化方式缺陷還是挺大的,最主要是耗費客戶端和伺服器端的資源。

二進位制分幀

並行處理

HTTP1 0 和 HTTP1 1的區別

這個應該是變化最大的乙個了.在1.0的版本中,如果客戶端請求頭沒有設定connection keep alive的話,那麼每次請求完成都會立即斷開連線,然後客戶端又要重新建立乙個http連線.假設乙個網頁包含了10個,那麼為了請求,客戶端必須要傳送10次請求,無疑這對頻寬和資源是極大的浪費,tcp的...

HTTP 1 0 和HTTP 1 1 的區別

區別一 最重要 http 1.1 加入了 1 持久連線 http persistent connections 也稱為 http keep alive,持久連線的特點是,只要任意一端沒有明確提出斷開連線,則保持tcp連線狀態 2 管線化 也叫流水線 pipelining 以前傳送請求後需要等待並且收...

HTTP1 0和HTTP1 1的區別

http 1.0規定瀏覽器與伺服器只保持短暫的連線,瀏覽器每次都需要與伺服器建立乙個tcp連線,伺服器完成請求後,立即斷開tcp連線,也就是說,同乙個客戶第二次訪問同乙個伺服器上的頁面時,伺服器的響應過程與第一次被訪問時是相同的。舉例在收到的html文件後,文件中有10個,每個都要重新再次建立連線獲...