关于HTTP/2最近你可能没少听到过他。首先如果你了解过Java 9的特性,那么你会发现在Java9中提供了新的方式来处理HTTP调用,提供了新的HTTP Client将替代HttpURLConnection,并提供对WebSocket和HTTP/2
的支持还有前两天剛刚发布的中,也会看到Spring Boot
。页面上所有的资源请求都是客户端与服务器上的一条 TCP 上请求和响应的!
HTTP/1.1的header带有大量信息而且每次都要重复發送。HTTP/2 为了减少这部分开销采用了HPACK 头部压缩算法对Header进行压缩。
简单来讲就是当用户的浏览器和服务器在建立连接后服务器主动将一些資源推送给浏览器并缓存起来的机制。有了缓存当浏览器想要访问已缓存的资源的时候就可以直接从缓存中读取了。
PS:本文参考了多篇攵章由于公众号限制无法增加链接,参考资料请前往原文查看