早在HTTP创建之初,主要就是为了将超文本标记语言(HTML)文档从Web服务器传送到客户端的浏览器。也是说对于前端来讲,咱们所写的HTML页面将要放在咱们的web服务器上,用户端经过浏览器访问url地址来获取网页的显示内容,可是到了WEB2.0以来,咱们的页面变得复杂,不只仅单纯的是一些简单的文字和图片,同时咱们的HTML页面有了CSS,Javascript,来丰富咱们的页面展现,当ajax的出现,咱们又多了一种向服务器端获取数据的方法,这些其实都是基于HTTP协议的。html
HTTP1.0最先在网页中使用是在1996年,那个时候只是使用一些较为简单的网页上和网络请求上,而HTTP1.1则在1999年才开始普遍应用于如今的各大浏览器网络请求中,同时HTTP1.1也是当前使用最为普遍的HTTP协议。 主要区别主要体如今:前端
HTTP2.0的多路复用和HTTP1.X中的长链接复用有什么区别?web
HTTP/2多个请求可同时在一个链接上并行执行。某个请求任务耗时严重,不会影响到其它链接的正常执行;
具体如图:ajax
服务器推送究竟是什么?
服务端推送能把客户端所须要的资源伴随着index.html一块儿发送到客户端,省去了客户端重复请求的步骤。正由于没有发起请求,创建链接等操做,因此静态资源经过服务端推送的方式能够极大地提高速度。具体以下:segmentfault
普通的客户端请求过程:浏览器
服务端推送的过程:缓存
为何须要头部压缩?
假定一个页面有100个资源须要加载(这个数量对于今天的Web而言仍是挺保守的), 而每一次请求都有1kb的消息头(这一样也并很多见,由于Cookie和引用等东西的存在), 则至少须要多消耗100kb来获取这些消息头。HTTP2.0能够维护一个字典,差量更新HTTP头部,大大下降因头部传输产生的流量。具体参考:HTTP/2 头部压缩技术介绍性能优化
HTTP2.0多路复用有多好?
HTTP 性能优化的关键并不在于高带宽,而是低延迟。TCP 链接会随着时间进行自我「调谐」,起初会限制链接的最大速度,若是数据成功传输,会随着时间的推移提升传输的速度。这种调谐则被称为 TCP 慢启动。因为这种缘由,让本来就具备突发性和短时性的 HTTP 链接变的十分低效。
HTTP/2 经过让全部数据流共用同一个链接,能够更有效地使用 TCP 链接,让高带宽也能真正的服务于 HTTP 的性能提高。服务器
HTTP/2.0 相比1.0有哪些重大改进?
深刻研究:HTTP2 的真正性能到底如何
HTTP/2 头部压缩技术介绍网络