http2新特性

2019-03-12  本文已影响10人  沐雨芝录

2015年发布
2009年Google自行研发的SPDY在Chrome上验证成功后,被当作是HTTP/2的基础

  • 完全采用二进制协议
  • 支持多路复用(multiplexing)
  • 支持头部压缩(header compression)
  • 支持服务器推送(server push)

二进制协议

多路复用

头部压缩

每个HTTP请求时都会承载一组表头。在HTTP/1.x中表头是以纯文本形式传输,通常需要500~800字节的开销,如果有cookie的话甚至会达到上千字节。为了减少这种开销并且提升性能,HTTP/2使用了HPACK算法进行压缩

服务端推送

HTTP/2为此提出了服务器推送机制,服务器端可以通过发起PUSH_PROMISE帧告知客户端,客户端收到服务器想要推送资源的意图后,可以决定是否接收推送。

服务器推送功能虽然很强大,但在实际使用中还需要考虑一些问题。第一个问题是如果客户端已经有缓存了,那么推送资源就是一种浪费。一种解决方法是只在用户第一次访问的时候推送资源。第二个问题是目前我们一般把静态资源放在CDN上,目前大部分CDN还不支持服务器推送,那么CDN和服务器推送到底哪个效果更好,这个可能还需要一些测试数据来做评判。

上一篇 下一篇

猜你喜欢

热点阅读