HTTP版本对比

版本 产生时间 内容 发展现状
HTTP/0.9 1991年 不涉及数据包传输,规定客户端和服务器之间通信格式,只能GET请求 没有作为正式的标准
HTTP/1.0 1996年 传输内容格式不限制,增加PUT、PATCH、HEAD、 OPTIONS、DELETE命令 正式作为标准
HTTP/1.1 1997年 持久连接(长连接)、节约带宽、HOST域、管道机制、分块传输编码 2015年前使用最广泛
HTTP/2 2015年 多路复用、服务器推送、头信息压缩、二进制协议等 逐渐覆盖市场

HTTP1.1

  • 如何处理长连接

如果没有设置超时时间,服务端可能通过四次挥手断开TCP连接;
TCP还有心跳包来检测连接是否存在


HTTP2.0

HTTP2.0与HTTP1.1比较

  • (1)采用二进制格式而非文本格式
    二进制协议解析起来更高效、“线上”更紧凑,更重要的是错误更少
  • (2)完全多路复用的,而非有序并阻塞的

多路复用:通过单一的HTTP/2连接请求发起多重的请求-响应消息,多个请求stream共享一个TCP连接,实现多留并行而不是依赖建立多个TCP连接。

  • (3)使用报头压缩,降低了开销
  • (4)让服务器可以将响应主动“推送”到客户端缓存中

你可能感兴趣的:(HTTP版本对比)