二进制分帧

image.png
不再明文,而是二进制编码

多路复用

第 15 题:简单讲解一下 http2 的多路复用 · Issue #14 · Advanced-Frontend/Daily-Interview-Question

  • http1.x会根据浏览器,建立6个tcp连接
    • image.png
  • http1.x虽然允许复用TCP连接,但是同一个TCP连接里面,所有的数据通信是按次序进行的。服务器只有处理完一个回应,才会进行下一个回应。要是前面的回应特别慢,后面就会有许多请求排队等着。这称为“队头堵塞”(Head-of-line blocking)。
    • 人们采取了很多方法去解决,例如使用多个域名、引入雪碧图、将小图内联等,但都没有从根本上解决问题
  • 管道化连接:
  • http2通过二进制分帧 + 多路复用 使用一个tcp连接
    • http1.1是传输文本,不可切割。

image.png
image.png
字段压缩

推送

【Springboot http2推送】Introducing Servlet 4.0 Server Push Using Spring Boot 2.1 - DZone Java

http3

image.png