http2.0 有什么优势

现在我们使用的是Http1.1,互联网发展迅速,http这个基础协议也要升级了,http2.0就要来了 http2.0 的核心优势 (1)采用二进制格式传输数据,而非 http1.1 的文本格式,二进制格式在协议的解析和优化扩展上带来更多的优势和可能 (2)对消息头采用 HPACK 进行压缩传输,能够节省消息头占用的网络的流量,而 http1.1 每次请求,都会携带大量冗余头信息,浪费了很多带宽资源,头压缩能够很好的解决该问题 (3)多路复用,就是多个请求都是通过一个 TCP 连接并发完成,http1.1 虽然通过pipeline也能并发请求,但是多个请求之间的响应会被阻塞的,所以 pipeline 至今也没有被普及应用,而 http2.0做到了真正的并发请求,同时,流还支持优先级和流量控制 (4)Server Push,服务端能够更快的把资源推送给客户端,例如服务端可以主动把 JS 和 CSS 文件推送给客户端,而不需要客户端解析 HTML 再发送这些请求,当客户端需要的时候,它已经在客户端了 http2.0 的基础 http2.0 有一个根本性的改动,就是不使用文本格式了,采用了二进制格式 二进制更易于frame(帧 数据包)的实现 frame 就是 http2.0 的基础,可以把它理解为TCP的数据包一样,http2.0 之所以能够有如此多的新特性,正是因为底层数据格式的改变 http2.0 中 每次传输的数据视为数据流,整个数据被拆分放入多个 frame 中,每个 frame 中记录了此帧的数据长度、类型、所属数据流的ID 多路复用 http2.0 能对网络效率有较大提升,其中一个主要原因就是使用了‘多路复用’机制 先看下http1.1中多请求的处理方式

可以看到,要么是串行,一个请求完成后再发另一个请求,要么是可以并发,但请求结果的返回过程必须是顺序的,第一个响应完成后,才能响应第二个,即使第二个先处理完成,也要等待第一个,就产生了阻塞

http2.0 的处理方式

只要有了请求结果数据,可以立即返回,不关心顺序问题,因为数据都被组装成了一个个的frame帧,frame中记录了自己所属数据流的ID,客户端把frame都接收到以后,根据数据流ID再进行组装即可

原文发布于微信公众号 - 性能与架构(yogoup)

原文发表时间:2015-10-31

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Python自动化测试

Python接口自动化测试之文件上传(二十二)

在接口测试中,经常会涉及到文件上传,文件上传一般包含的文件是图片,视频以及如csv,excel,记事本等文件,它的请求头中Content-Type对应...

8833
来自专栏企鹅号快讯

利用Django在前端展示Oracle 状态趋势

开发环境 操作系统:CentOS 7.4 Python版本 :3.6 Django版本: 1.10.5 操作系统用户:oms 数据处理:pandas 前端展示:...

3067
来自专栏程序员互动联盟

【答疑释惑】如何知道电脑是32位还是64位

近来在联盟中经常看到有人问64位系统与32位系统的问题。这里把相关问题几种回答下。 首先我们要明白一个常识,64位操作系统可以使用32位系统的软件,但是32位系...

2913
来自专栏黑白安全

数以万计 Django 应用程序因配置错误泄露密码等敏感信息

近日,安全研究员 FábioCastro 发现 28,165 个配置错误的 Django 应用程序暴露敏感信息,其中包括密码,API 密钥以及 AWS 访问令牌...

1036
来自专栏游戏杂谈

替换系统自带的记事本

系统自带的记事本功能比较弱,所以一般我会选择使用notepad2.exe来替代它。

2963
来自专栏Puppeteer学习

基于puppeteer的网络拦截工具flyover

我们知道所有请求,无论是页面请求还是js 发起的各种请求,最终都是通过浏览器软件发起的,服务器响应后,都是响应给浏览器的,那么整个工程可以细分为如下流程(个人理...

56317
来自专栏编程软文

postman从入门到精通

今天总监让我给测试同事们培训postman,使用过postman的朋友应该知道,这个简直就是前后端接口调试神器。根据平时的经验以及自己到网上看了相关的帖子,对于...

1291
来自专栏源哥的专栏

开发统一的博客接口

现在博客很流行,很多人都在使用博客,有些人同时拥有几个不同的博客网站,不知你有没有这样的烦恼,就是你写了一篇文章,这时想传到不同的博客网站上去,就得打开不同的...

893
来自专栏雨过天晴

原 mac brew

1826
来自专栏小巫技术博客

App更新策略课程-实现进度更新

882

扫码关注云+社区

领取腾讯云代金券