HTTP/2是對HTTP/1的重大改進(jìn),它引入了許多新特性以改善性能蒲每、效率和安全性。以下是HTTP/2相對于HTTP/1的一些關(guān)鍵改進(jìn):
- 二進(jìn)制協(xié)議(Binary Protocol):HTTP/2是一個二進(jìn)制協(xié)議喻括,而HTTP/1是文本協(xié)議邀杏。二進(jìn)制協(xié)議更易于解析、更高效唬血、更低錯誤率望蜡。
- 頭部壓縮(Header Compression):HTTP/1的頭部信息是未壓縮的,而且每個請求/響應(yīng)都需要發(fā)送完整的頭部信息拷恨。HTTP/2引入了HPACK壓縮格式脖律,它可以有效地壓縮頭部信息,并且只需要在首次請求時發(fā)送完整頭部挑随,之后的請求可以只發(fā)送差異部分状您。
- 多路復(fù)用(Multiplexing):在HTTP/1中勒叠,每個請求/響應(yīng)都需要一個單獨(dú)的TCP連接兜挨,這導(dǎo)致了所謂的“隊(duì)頭阻塞”問題,即一次只能處理一個請求眯分。而HTTP/2通過在一個TCP連接上同時處理多個請求/響應(yīng)來解決這個問題拌汇,大大提高了效率。
- 服務(wù)器推送(Server Push):HTTP/2允許服務(wù)器在客戶端需要之前就主動發(fā)送數(shù)據(jù)弊决。例如噪舀,當(dāng)服務(wù)器收到一個請求HTML頁面的請求后,它知道客戶端接下來可能會請求這個頁面中引用的CSS和JavaScript文件飘诗,因此它可以立即將這些文件推送給客戶端与倡,而無需等待客戶端的請求。
- 請求優(yōu)先級(Request Prioritization):由于HTTP/2支持在一個連接上處理多個并行請求昆稿,因此它允許客戶端為每個請求指定一個優(yōu)先級纺座。服務(wù)器可以使用這個信息來決定優(yōu)先處理哪些請求,從而更有效地利用資源溉潭。
參考:https://blog.csdn.net/m0_57236802/article/details/131542615