HTTP2024-07-18

为什么 HTTP2 比 HTTP1 更快

http2

  1. 二进制框架层: HTTP2 将消息编码为二进制格式

    这允许将消息分成称为帧的更小的单元, 然后通过 TCP 发送这些单元, 从而实现更高效的处理

  2. 多路复用: 二进制帧允许完整的请求和响应复用

    客户端和服务器可以在传输过程中交错帧并在另一端重新组装它们

  3. 流式优先: 通过流式优先, 开发人员可以自定义请求或流的相对权重, 以使服务器为更高优先级的请求发送更多帧

  4. 服务端推送: 由于 HTTP2 允许对客户端请求进行多个并发响应, 因此服务器可以将附加资源与请求的页面一起发送到客户端

  5. HPACK 压缩: HTTP2 使用一种称为 HPACK 的特殊压缩算法, 使多个请求的头部更小, 从而节省带宽

尽管有这些功能, HTTP2 也可能很慢, 具体取决于具体的技术场景. 因此需要进行测试和优化, 以最大限度地发挥 HTTP2 的优势.