资讯专栏INFORMATION COLUMN

聊一聊 http2.0

马龙驹 / 1157人阅读

摘要:有了多路复用之后,在同一个交易渠道上,能够同时完成客户所有订单货物的采购和交付,客户端只要在每个订单上备注好,货物拆分发货,乱序到达之后按照重新组装即可,不会因为某个包裹的延误导致整体配送进度的推迟。

1。 我们认识http 协议,从最初的,客户端与服务器进行通讯,基于连接发生的请求与响应

在HTTP1.0时代,连接无法复用,每次下完单,都被强制登出/关机,下一次下单,就得重新登录。

为了解决http1.0的单链接,http1.1 又提出了 保持链接设置Connection:Keep-Alive

http1.1 默认开启了keep-alive,但是在keep-alive的背景下,必须等到请求1完成之后,再继续处理2,3,这样的方式很浪费时间,于是又提出了 HTTPpipelining 不用等到请求1 完成,就可以直接继续2,3,4


只可惜服务器是按照顺序处理的,如果服务1,没有响应,那么2,3,4 服务就需要原地等待,只有等到1处理完成之后,才能处理后面2,3,4.为了解决这个问题,服务器需要增加好几个通道,建立多个链接,就算其中一个请求堵塞了,也不会影响其他的。
但是这样也不能解决问题 比如建立多个链接,链接数目有限,每换一个服务链接,就得从新TCP 三次握手,容易造成服务断开,随着服务的增加,订单也只能按照先进先出的顺序来排队,但是堵塞依旧很严重。所以这里创造了SPDY协议,后续在此基础上,又起草了 http2.0协议

由上,HTTP/1.1相较于 HTTP/1.0 协议的区别主要体现在:

1 缓存处理

2 带宽优化及网络连接的使用

3 错误通知的管理

4 消息在网络中的发送

5 互联网地址的维护

6 安全性及完整性

常用的请求方式

GET 请求获取Request-URI所标识的资源

POST 在Request-URI所标识的资源后附加新的数据

HEAD 请求获取由Request-URI所标识的资源的响应消息报头

PUT 请求服务器存储一个资源,并用Request-URI作为其标识

DELETE 请求服务器删除Request-URI所标识的资源

TRACE 请求服务器回送收到的请求信息,主要用于测试或诊断

CONNECT 保留将来使用

OPTIONS 请求查询服务器的性能,或者查询与资源相关的选项和需求

GET方法:在浏览器的地址栏中输入网址的方式访问网页时,浏览器采用GET方法向服务器获取资源,POST方法要求被请求服务器接受附在请求后面的数据,常用于提交表单。GET是用于获取数据的,POST一般用于将数据发给服务器之用。

HTTP 1.1状态代码及其含义

状态代码有三位数字组成,第一个数字定义了响应的类别,且有五种可能取值:

1xx:指示信息--表示请求已接收,继续处理

2xx:成功--表示请求已被成功接收、理解、接受

3xx:重定向--要完成请求必须进行更进一步的操作

4xx:客户端错误--请求有语法错误或请求无法实现

5xx:服务器端错误--服务器未能实现合法的请求

2. 多路复用

多路复用,即单个链接同时进行多个业务单元数据的传输。
有了多路复用之后,在同一个交易渠道上,能够同时完成客户所有订单货物的采购和交付,客户端只要在每个订单上备注好ID,货物拆分发货,乱序到达之后按照ID重新组装即可,不会因为某个包裹的延误导致整体配送进度的推迟。 简而言之 就是打包服务

请求优先级
-假如订单2的商品特别重要,就在订单2上留一段备注,服务端收到订单之后,会优先发出订单2的包裹。

同时,服务端评估订单5是短保产品,需要尽快到货,也会将订单5优先发货。

头部压缩

HTTP1.X的头部越来越膨胀,很多都是重复且多余的,HTTP2.0可以压缩头部的大小,并且避免了重复的传输,可以大大降低延迟。

就好比货物越轻,运送速度则越快,HTTP2.0协议下,卖家发货时将多余包装扔掉,这样买家就能更快地收到货啦!

服务端推送 就是预定

服务端推送是HTTP2.0的一大亮点。

在客户端下了订单1之后,服务端预先判断客户端可能会需要下订单2、3、4……于是主动发货。这种主动推送的机制,可以节省接下来的几个请求耗时,提升访问速度。

科普完毕的分割线

有了HTTP2.0之后,卖家(网站)能够更快地将内容呈现给买家(用户)。
参考原文地址

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/52611.html

相关文章

  • [一聊系列]一聊WEB前端安全那些事儿

    摘要:所以今天,就和大家一起聊一聊前端的安全那些事儿。我们就聊一聊前端工程师们需要注意的那些安全知识。殊不知,这不仅仅是违反了的标准而已,也同样会被黑客所利用。 欢迎大家收看聊一聊系列,这一套系列文章,可以帮助前端工程师们了解前端的方方面面(不仅仅是代码):https://segmentfault.com/blog... 随着互联网的发达,各种WEB应用也变得越来越复杂,满足了用户的各种需求...

    AZmake 评论0 收藏0
  • Android 面试必备 - http 与 https 协议

    摘要:灵活允许传输任意类型的数据对象。无连接每次响应一个请求,响应完成以后就断开连接。无状态服务器不保存浏览器的任何信息。每次提交的请求之间没有关联。非流水线发出一个报文,等到响应,再发下一个报文。同时,流还支持优先级和流量控制。 版权声明:本文为博主原创文章,遵循[ CC 4.0by-sa ](http://creativecommons.org/li...,转载请附上原文出处链接和本...

    Wuv1Up 评论0 收藏0
  • [一聊系列]一聊网页的分段传输与渲染那些事儿

    摘要:欢迎大家收看聊一聊系列,这一套系列文章,可以帮助前端工程师们了解前端的方方面面不仅仅是代码这一节,请跟随笔者聊一聊,网页的分段传输与渲染,用一些非常规手段优化我们的网站响应速度。可以处理完一块就返回一块,让浏览器尽早的接收到,可以先行渲染。 欢迎大家收看聊一聊系列,这一套系列文章,可以帮助前端工程师们了解前端的方方面面(不仅仅是代码):https://segmentfault.com/...

    thursday 评论0 收藏0
  • [一聊系列]一聊前端功能统计那些事儿

    摘要:欢迎大家收看聊一聊系列,这一套系列文章,可以帮助前端工程师们了解前端的方方面面不仅仅是代码什么是功能统计作为一名开发,我们的产品发布出去之后,无论是产品还是运营,其实都是想及时了解产品对用户产生的影响的。下一章,我们将继续聊聊速度统计。 欢迎大家收看聊一聊系列,这一套系列文章,可以帮助前端工程师们了解前端的方方面面(不仅仅是代码):https://segmentfault.com/bl...

    PAMPANG 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<