网络编程——HTTP2解决的问题

HTTP/1.1由于线头阻塞、Header冗余和TCP连接数限制等问题,已无法满足现代网络需求。HTTP/2通过二进制分帧、Header压缩和多路复用等特性,大幅提升了网页性能,减少了网络延迟,解决了HTTP/1.1的痛点。同时,服务推送功能允许服务器预发送资源,进一步优化加载速度。
摘要由CSDN通过智能技术生成

HTTP的现状

HTTP/1.1自从1999年发布以来已经很长时间了,随着互联网的爆炸式发展,从当初网页内容以文本为主,到现在以富媒体(如图片、声音、视频)为主。聊天、视频直播 等实时性应用越来越多, HTTP/1.1协议的特性,已经无法满足现代网络的需求了。

HTTP2.0是自1999年http1.1发布后的首个更新。
HTTP/2 相比于 HTTP/1.1,大幅度提高了网页的性能,只需要服务端升级到HTTP/2 协议就可以减少很多之前需要做的性能优化工作。

保持与HTTP 1.1语义的向后兼容性也是HTTP/2 的一个关键目标。

兼容问题以及如何优雅降级是国内还不普遍使用的原因。
现在,几乎所有互联网上的内容都采用了HTTP 1.1作为通信协议。

HTTP/1.1的缺陷

HTTP 1.1包含了太多细节和可选的部分,这让它变得过于庞大。
HTTP 1.1对网络延迟非常敏感。部分原因是HTTP pipelining还存有很多问题,大部分桌面浏览器选择默认关闭HTTP pipelining这一功能。

线头阻塞(Head-of-line blocking)

HTTP pipelining是这样一种技术:多个HTTP请求放到一个TCP连接中一一发送,而且不需要等待服务器对前一个请求的响应;客户端还是要按照发送请求的顺序来接收响应。这就像在超市收银台排队时一样,你并不知道前面的顾客会用时多久,如果前一个请求非常耗时(顾客磨蹭),那么后续请求都会受到影响,这就是所谓的线头阻塞(head-of-line blocking)。

近几年来网络带宽增长非常快,然而我们并没有看到网络延迟有对应程度的降低。网络延迟问题主要由于线头阻塞又

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值