HTTP1.*与HTTP2.0的区别~

原文地址:HTTP1.*与HTTP2.0的区别~

区别如下:

  1. 新的二进制格式(binary format):HTTP1.*的解析还是基于文本来的,基于文本的协议的格式在解析方面还是存在天然缺陷的,文本的表现形式多样,要做到健壮性需考虑的场景必然很多,二进制则不同,只认0和1的组合,基于这种考虑,HTTP2.0的协议解析采用二进制格式,实现起来方便且健壮。

  2. 多路复用(multiPlexing):也就是连接共享,每个request都是用的连接共享机制,一个request对应一个ID,如此一个连接上可有多个request,每个连接上的request可随机混在一起,接收方可根据request的ID,将request归属到各自不同的服务端请求里。

  3. header压缩:HTTP1.*的header带有大量信息,并且每次访问都需重复发送,HTTP2.0使用encoder来减少需传输的header大小,通讯双方各自cache一份header fields表,如此一来,既可以避免header重复传输,又减小了需传输header的大小。

  4. 服务端推送(server push):是一种在客户端请求前发送数据的机制,服务端在HTTP2.0中可对客户端的一个请求发送多个响应。

大致就这些了,这也是面试的时候被问到了,所以小小记录一下。

至此,本次分享就结束了,后期会慢慢补充。

以上仅为个人观点,不一定准确,能帮到各位那是最好的。

好啦,到这里本文就结束了,喜欢的话就来个三连击吧。

扫码关注公众号,获取更多优质内容。

 

おすすめ

転載: blog.csdn.net/luyaran/article/details/121300739