HTTP协议从0.9-2.0的变化

栏目: 后端 · 前端 · 发布时间: 4年前

内容简介:HTTP/0.9是最早的版本,确认了HTTP基于TCP协议。这个版本只支持GET一个方法,且服务器只能返回HTML格式的字符串。HTTP-1.0新增了许多内容,包括支持不同类型的响应格式,例如图像、视频等等。新增了HEAD和POST请求方法,补充了响应状态码,权限,缓存等功能。HTTP/1.1引入了持久链接以及管道机制。

HTTP/0.9是最早的版本,确认了HTTP基于TCP协议。这个版本只支持GET一个方法,且服务器只能返回HTML格式的字符串。

HTTP/1.0

HTTP-1.0新增了许多内容,包括支持不同类型的响应格式,例如图像、视频等等。新增了HEAD和POST请求方法,补充了响应状态码,权限,缓存等功能。

HTTP/1.1

HTTP/1.1引入了持久链接以及管道机制。

HTTP/2.0

HTTP/2.0引入了二进制,多路复用,服务器推送(socket),数据流和头信息压缩优化。

HTTP/3.0

HTTP/3.0据说引入了新的协议(QUIC),该协议解决了以前TCP协议所存在的问题,并且极大的提升了性能与安全性。

不同版本解决的问题

0.9 --> 1.0

从0.9到1.0版本,HTTP协议的变化极大丰富了前端页面可以交互的内容,在最早的时候可能我们所看到的只有一个纯文本的页面,但是到了1.0版本,新增了图像、音频等新的响应内容,前端可交互的内容变得更加丰富了。

1.0 --> 1.1

在1.0版本,因为每个TCP只能发送一个请求,发送数据之后连接就会关闭;每次发送新的请求就需要建立一个新的连接,而建立一个新的连接成本非常高昂,由此产生了连接无法复用的问题,存在性能问题。1.1版本引入的持久连接允许一个请求在数据返回之后保留一段时间,和管道机制允许我们同时发送多个请求。

1.1 --> 2.0

在1.1版本引入的管道机制允许我们同时发送多个请求,例如同时发送A和B请求,但是服务器还是会按照顺序先处理A请求,等A响应后再处理B请求,由此产生了我们所说的线头阻塞(Head-of-line blocking)问题。如果第一个响应处理非常久,则会导致后面的请求必须等待前面的请求处理完之后才能得到响应。

所以在2.0版本引入的多路复用和数据流允许我们不会受到前面处理非常耗时的请求影响,可以分优先级处理响应。同时引入了服务器推送(socket)增加了客户端与服务器双向通信的能力。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

技术之瞳——阿里巴巴技术笔试心得

技术之瞳——阿里巴巴技术笔试心得

阿里巴巴集团校园招聘笔试项目组 / 电子工业出版社 / 2016-11 / 69

《技术之瞳——阿里巴巴技术笔试心得》由阿里巴巴集团校园招聘笔试项目组所著,收集了阿里历年校招中的精华笔试题,涉 及多个领域。《技术之瞳——阿里巴巴技术笔试心得》中内容大量结合了阿里巴巴的实际工作场景,以例题、解析、习题的形式,引 导读者深入理解技术上的关键点、紧要处,夯实基础,启发思考。《技术之瞳——阿里巴巴技术笔试心得》内容不仅专业、有趣,更 是将理论知识与实践应用结合起来,以场景化的问答娓娓道......一起来看看 《技术之瞳——阿里巴巴技术笔试心得》 这本书的介绍吧!

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具