快捷导航
蚂蚁部落 网站首页 前端教程 HTTP协议 查看内容

栏目导航

HTTP1.1缺点

2017-10-10 23:52| 发布者: admin| 查看: 87| 评论: 0|来自: 蚂蚁部落

HTTP1.1版本于1997年1月发布,历经20年,依然是写本文之时(2017-10-10)应用最为广泛的HTTP协议,相较于HTTP1.0版本有着诸多改进,主要有如下几点:

(1).增加持久连接功能,虽然HTTP1.0时,某些浏览器增加了Connection:

[HTML] 纯文本查看 复制代码运行代码
Connection: keep-alive

但这不是标准字段,各个浏览器的实现并不统一;关于持久连接可以参阅HTTP 持久连接一章节。

(2).增加管道机制:

在HTTP1.0版本,当前请求必须要等待前一个请求发出并收到响应后才能发出,例如B请求必须要等到前面的A请求发送并且收到响应后,才能发出。在HTTP1.1版本,允许多个请求同时发出,不过响应还是按照顺序依次返回。

图示如下:

a:3:{s:3:\"pic\";s:43:\"portal/201710/11/002405y79t7ggeqjjeh0th.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

这样可以有效解决后续请求的等待时间,提高了网页的相应速度。

(3).分块传输编码:

如果服务器端遇到比较耗时的动态操作,那么服务器要等到所有操作完成,才能发送数据,效率比较低下。更为有效的处理方式是,产生一块数据,发送一块数据,没必要等待所有数据都操作完成,也就是采用stream(流模式)取代buffer(缓存模式)。

(4).请求头增加了Host字段:

请求头增加了HOST字段,用来指定当前请求服务器的域名,图示如下:

a:3:{s:3:\"pic\";s:43:\"portal/201710/11/003736iw5ba1updxad45aw.jpg\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

此项功能为互联网的发展起到了很大的推动作用,因为使得虚拟主机得以广泛应用,建站成本得到极大的降低,否则一个主机能绑定一个域名。

HTTP.1.1版本缺点:

随着互联网软硬件的发展,页面排版越来越精美,内容页越来越丰富,所要请求的内容和数量也越来越多;HTTP1.1版本对于网络延迟非常敏感,主要是由于队头堵塞(Head-of-line blocking)导致的。虽然HTTP1.1版本增加持久连接,实现了TCP连接的复用功能,但是服务器对于每一个请求的响应还是要按照顺序进行,如果服务器对前一个请求的处理非常慢,那么后面的请求必须要进行排队,产生堵塞现象。还有一点,尽管引入管道技术,但存在各种问题,此功能基本是默认关闭的。

为了解决延迟问题,当前有两种方式:

(1).基于HTTP1.1版本的可以参阅HTTP请求延迟解决方案一章节。

(2).更新的技术可以参阅HTTP2协议介绍一章节。


鲜花

握手

雷人

路过

鸡蛋

最新评论

关于我们|手机版|小黑屋| ( 鲁ICP备10022556号-3 )

GMT+8, 2017-10-19 02:31 , Processed in 0.067282 second(s), 21 queries .

Powered by Discuz! X3.2 Licensed

Copyright © 2012-2017 Design: 蚂蚁部落

返回顶部