网络面试:HTTP1.0,HTTP1.1和HTTP2.0的区别

HTTP1.1在HTTP1.0基础上的改进

1. 长连接

HTTP 1.0需要使用keep-alive参数来建立一个长连接,而HTTP1.1默认支持长连接
长连接的好处:一个网页上可能有多个资源对象,长连接可以通过一个连接传输网页上的所有对象,而短连接每次连接只能传输一个对象,也就是一个网页的内容需要传输多次


2. 缓存

HTTP1.0缓存的资源对象到了一定时间之后会失效,不能再次使用;而HTTP1.1缓存的资源对象失效后还能与源服务器进行重新激活。


3. 带宽使用

HTTP/1.0一次只能请求一整个资源对象,而HTTP/1.1可以请求一个资源对象的一部分,因此在不需要得到整个资源对象时,可节约带宽,而且支持断点续传


4. Host域

由于一台物理服务器上可以存在多个虚拟主机,并且它们共享一个IP地址,因此HTTP1.1在HTTP1.0的基础上加了改进,加了一个Host域,用于指定共享同一个IP地址中的某一台主机,而HTTP1.0则默认一个IP地址只能属于一台主机,没有Host域


HTTP2.0在HTTP1.1基础上的改进

1. 多路复用

HTTP2.0同一个连接可以并发处理多个请求,而且并发请求的数量比HTTP1.1大了好几个数量级,这意味着减少了建立连接所需要的开销


2. 数据压缩

HTTP的请求和响应包括三个部分,即状态行,头部信息,消息主体。HTTP1.1只对消息主体进行压缩,而HTTP2.0对状态行,头部信息,消息主体都进行压缩


3. 服务器推送
在使用HTTP1.1时,客户端请求什么资源,服务器才给什么;而HTTP2.0服务器会自动把客户端一定需要的资源传输给客户端,比如一些必要的附加资源等等


觉得有问题的地方欢迎在评论区指出呀,觉得不错不妨点个赞…本人正在准备春招,因此近期会写不少面试题总结,有一起的可以互相关注,一起加油~

发布了22 篇原创文章 · 获赞 17 · 访问量 8894

猜你喜欢

转载自blog.csdn.net/Sun_Dean/article/details/104108469