HTTP/2
HTTP/2 是 HTTP 网络协议的一次重大修订。
HTTP/2 的主要目标是通过实现完整的请求和响应多路复用及请求优先级支持来降低 延迟和 队头阻塞,并通过对 HTTP 报头字段进行高效压缩 (HPACK) 来最小化协议开销。
HTTP/2 还引入了一个名为 Server Push 的机制,允许服务器预判客户端何时会需要某个资源,并提前将其发送给客户端。然而,Server Push 在实际实现中被证明非常棘手,并且已被大多数主流浏览器引擎移除。它已被 rel="preload" 和 103 Early hints 等替代方法所取代。
HTTP/2 不会修改 HTTP 的语义,这意味着 HTTP/1.1 中发现的核心概念,例如方法、状态码、URI 和报头字段,保持不变。相反,HTTP/2 修改了数据在客户端和服务器之间格式化(分帧)和传输的方式,两者都管理着整个过程,并在一个分帧层内隐藏了协议的复杂性。因此,所有现有的应用程序都可以无需修改地通过该协议进行传输。