與http1.1相比http2.0的優點

http2.0與http1.1相比有以下優點golang

可在https://http2.golang.org/gophertiles?latency=30下對比http1與http2的區別。算法

1. 多路複用 (Multiplexing)

多路複用容許同時經過一個http鏈接發起多個的請求-響應消息。 服務器

由上圖可見全部請求有相同的connect idmarkdown

2. 首部壓縮

HTTP2.0使用HPACK算法對header的數據進行壓縮,這樣數據體積小了,在網絡上傳輸就會更快。網絡

3. 二進制格式

HTTP1.x的解析是基於文本。基於文本協議的格式解析存在自然缺陷,文本的表現形式有多樣性,要作到健壯性考慮的場景必然不少,二進制則不一樣,只認0和1的組合。基於這種考慮HTTP2.0的協議解析決定採用二進制格式,實現方便且健壯。spa

4. 支持服務器推送

服務器能夠在同一TCP鏈接中將客戶端未請求的數據同原始請求的數據一同發送過來,一個請求多個響應,在多路複用的基礎上又減小了客戶端請求的時間。下圖可見在initialtor列顯示爲push 3d

相關文章
相關標籤/搜索