HTTP1.0/HTTP1.1/HTTP2.0的演进

HTTP1.0

  • 短连接,每次请求都需要重新建立连接
  • 不支持断点续传

HTTP1.1

  • 支持长连接,同一个客户端连接可保持长连接,请求可在连接中顺序发出。
  • 查看http请求头中有keepalive 参数
  • 支持断点续传
  • 新增24种错误码,例如409(请求的资源和资源当前的状态发生冲突),410(服务器上的某个资源被永久删除),HTTP1.1的请求消息和响应消息都应支持Host头域,且请求消息中如果没有Host头域会报告一个错误(400 Bad Request)。
  • header中新增了请求头域(hostname)
  • 文本形式传输协议

HTTP2.0

  • 支持长连接,在连接中请求可以并行进行,无需等待。
  • 二进制传输协议的解析比文本协议的解析要简单高效
  • header压缩:前面提到过HTTP1.x的header带有大量信息,而且每次都要重复发送,HTTP2.0使用encoder来减少需要传输的header大小,通讯双方各自cache一份header fields表,既避免了重复header的传输,又减小了需要传输的大小。
  • 增加了服务端推送的功能,省去啦客户端每个资源都要从服务器请求的情况。下图是HTTP1.1和HTTP2.0消息推送的区别图解。

定位问题原因* 根据原因思考问题解决方案* 实践验证方案有效性* 提交验证结果
原文地址:https://www.cnblogs.com/jimoliunian/p/12841135.html