回顾HTTP/2

HTTP/2协议规范(RFC 7540)于2015年5月发表,在那之后,该协议已在互联网和万维网上得到广泛的实现和部署。

2018年初,最热的前一千个网站中约40%运行着HTTP/2,而在Firefox发出的HTTPS请求中,约70%的请求得到了HTTP/2响应。主流的浏览器、服务器以及代理都支持了HTTP/2。

HTTP/2解决了HTTP/1中存在的一大堆缺点,其中相当一部分对于开发者来说非常麻烦。在HTTP/2出现前,开发者要用许多种变通方法来解决,而HTTP/2解决了它们。

HTTP/2的一个主要特性是使用多路复用(multiplexing),因而它可以通过同一个TCP连接发送多个逻辑数据流。复用使得很多事情变得更快更好,它带来更好的拥塞控制、更充分的带宽利用、更长久的TCP连接————这些都比以前更好了,链路能更容易实现全速传输。标头压缩技术也减少了带宽的用量。

采用HTTP/2后,浏览器对每个主机一般只需要 一个 TCP连接,而不是以前常见的 六个 连接。事实上,HTTP/2使用的连接聚合(connection coalescing)和“去分片”(desharding)技术还可以进一步缩减连接数。

HTTP/2解决了HTTP的队头拥塞(head of line blocking)问题,客户端必须等待一个请求完成才能发送下一个请求的日子过去了。

http2 man