内容简介:HTTP/2协议在2015年就已经正式被发表了,但是现在有许多网站还是采用的http/1.1协议,都9102年了,确认不升级一下吗?想必该有人问了,为啥要升级,http/1.1用的好好的,http/2有啥优势?首先来看一下http/1.1的缺点,也就是http/2的优势所在了。基于以上缺点,也出现了许多优化手段:雪碧图、合并脚本和样式表、资源内联、域名分片等优化工作,但是如果HTTP协议足够好的话,本可以避免这些额外的操作。
HTTP/2协议在2015年就已经正式被发表了,但是现在有许多网站还是采用的http/1.1协议,都9102年了,确认不升级一下吗?想必该有人问了,为啥要升级,http/1.1用的好好的,http/2有啥优势?
首先来看一下http/1.1的缺点,也就是http/2的优势所在了。
HTTP/1.1 缺点
- 对头阻塞(Head-of-line blocking)
HTTP/1.1协议虽然可以在同一个TCP连接上发送多个请求,但是这多个请求是有顺序的,必须处理完第一个请求才会响应下一个请求。如果第一个请求处理的特别慢,后面的所有请求就需要排队。 - TCP 连接数限制
对于同一个域名,浏览器最多只能同时创建 6 ~ 8 个TCP连接。如果一个页面有十个请求同时发送,那么只能等第一次的 6 ~ 8 个请求都返回了才能继续接下来的 2 ~ 4 个请求。这怎么能行?域名分片技术应运而生。就是把资源分配到不同的域名下(可以是二级子域名),这样就解决了限制,愉快~但是滥用域名分片技术也不行,因为每个TCP连接也是很费时的(这个大家都懂的)。 - Header 内容繁多,有时有可能会超过响应内容,并且每次有许多字段都是重复传输。
- HTTP/1.1是文本协议传输,不够安全。
基于以上缺点,也出现了许多优化手段:雪碧图、合并脚本和样式表、资源内联、域名分片等优化工作,但是如果HTTP协议足够好的话,本可以避免这些额外的操作。
HTTP/2
http2相比于http/1.1的新特性包括:
- 多路复用 (MultiPlexing),单一长连接,二进制格式传输,请求优先级设置
- 头部header压缩
- 服务端推送Server Push
下面来一一介绍。
多路复用 (MultiPlexing)
HTTP/2 复用 TCP 连接,在一个连接里,客户端和浏览器都可以同时发送多个请求或回应,这些请求或回应在逻辑上分成了很多流(stream),每个流中可以传输若干消息(Message),每个消息由若干最小的二进制帧(Frame)组成。而且不用按照顺序一一对应(但是同一个请求或响应的帧必须是有序的,不同的可以无序),这样就避免了"队头堵塞",减少了 TCP 连接数量和 TCP 连接慢启动造成的问题。http2还可以对stream指定优先级,优先级越高的越先响应。比如可以把js和css的优先级设置的高一些,让他们优先下载并执行。优先级也能动态的修改。
多路复用图:
头部header压缩
HTTP是无状态的,每次请求都需要附带一些信息。但是许多字段都是重复的,会浪费带宽影响速度。
HTTP/2对头部信息采用HPACK压缩算法来减少报文头的大小。具体做法是把报文头信息中常见的名和值对应一个索引,维护了一张静态字典,index从1到61,比如把:method:GET映射成2,这样就能达到压缩头部的作用。但是对于一些动态的资源,比如,user-agent,需要维护一份可动态添加内容的共同动态字典,这份动态字典在数据传输的过程中逐步建立,index从62开始。然后将映射之后的数据用huffman编码。
静态字典表:
服务端推送(Server Push)
以前是客户端向服务器请求什么,服务器就发送什么,十分吝啬。现在有了服务端推送,客户端向服务端要了一滴水,服务端可以返回整个森林。
这允许服务器直接提供浏览器渲染页面所需资源,而无须浏览器在收到、解析页面后再提起一轮请求,节约了加载时间。比如浏览器向服务器请求一个页面,之前需要等到浏览器收到页面解析html后,发现里面引用了静态资源,浏览器再向服务器发送静态资源的请求。但是现在服务器可以直接将页面和所需的静态资源一并返回。
nginx如何配置
nginx开始HPPT/2非常简单,只需在HTTPS设置后加上http2即可。
server {
listen 443 ssl http2;
}
讲了HTTP/2这么多的优点,客官确定不升级一下吗?升级之后就可以对雪碧图、合并脚本和样式表、资源内联、域名分片这些优化say goodbye了。以后谁再问你网站优化都有哪些方法,上面的几种就不用说了。
以上所述就是小编给大家介绍的《都9102年了,确认不升级到HTTP/2吗?》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Inside Larry's and Sergey's Brain
Richard Brandt / Portfolio / 17 Sep 2009 / USD 24.95
You’ve used their products. You’ve heard about their skyrocketing wealth and “don’t be evil” business motto. But how much do you really know about Google’s founders, Larry Page and Sergey Brin? Inside......一起来看看 《Inside Larry's and Sergey's Brain》 这本书的介绍吧!