Http1和Http2的区别

这篇具有很好参考价值的文章主要介绍了Http1和Http2的区别。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、HTTP1和HTTP2的区别

1.新的二进制格式:HTTP2采用二进制格式而HTTP1使用文本格式。

2.多路复用:HTTP2是完全多复用的,而非有序并阻塞的,只需一个连接即可实现并行。HTTP1一个连接只能发送一个请求。

3.首部压缩:HTTP1.x的header带有大量信息,而且每次都要重复发送,HTTP2.0使用encoder来减少需要传输的header大小,通讯双方各自cache一份header fields表,既避免了重复header的传输,又减小了需要传输的大小。

4.服务器推送:HTTP2在客户端请求资源的时候,会把相关的资源一起发送给客户端,而不需要客户端再次发起请求获取资源。

二、什么是HTTP2.0

HTTP/2(超文本传输协议第2版,最初命名为HTTP 2.0),是HTTP协议的的第二个主要版本,使用于万维网。HTTP/2是HTTP协议自1999年HTTP 1.1发布后的首个更新,主要基于SPDY协议(是Google开发的基于TCP的应用层协议,用以最小化网络延迟,提升网络速度,优化用户的网络使用体验)。

三、为什么需要头部压缩?

HTTP协议是不带有状态的,每次请求头部都会附上所有的信息,而且很多的信息都是重复的,这会浪费很多宽带也会影响速度,所以HTTP2对头部进行了压缩,一方面使用gzip或compress进行头部压缩,另一方面,客户端和服务器会同时维护同一张头信息表,所有的字段都会存入这张表中,生成一个索引号,以后就不需要再发送同样的字段了,只发送索引号,提示了速度。文章来源地址https://www.toymoban.com/news/detail-571855.html

到了这里,关于Http1和Http2的区别的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 关于HTTP、HTTPS、HTTP1.1、HTTP2.0、HTTP3.0的介绍及区别

    一、HTTP的简介        HTTP(超文本传输协议)是一种用于分布式、协作式和超媒体信息系统的应用层协议,常基于TCP/IP协议传输数据,互联网上应用最为广泛的一种网络协议,所有的www文件都必须遵循这个标准。设计初衷是为了提供一种发布和接收HTML页面的方法。 二、HT

    2024年02月01日
    浏览(44)
  • http1.1与http2.0

    通俗来讲,http就是计算机通过网络进行通信的规则,是一个基于 请求与响应 , 无状态的 , 应用层协议 。常用于 TCP/IP协议 传输数据。目前任何终端之间任何一种通信方式都必须按Http协议进行,否则无法连接。tcp(三次握手,四次挥手)。 请求与响应 :客户端请求、服务端

    2023年04月19日
    浏览(69)
  • 谈谈Http2-为什么nginx在http2下的表现远弱于http1.1

    本篇文章的灵感来源于不久前的一次压测,接口的TPS在100并发下不足500,且延时超过500MS,这个接口的性能远远低于我们的预期。 对应的接口是一个极为简单的接口,只做了两件事情: 从数据库中读取一条数据,做了一些简单的处理 进行一次HTTP调用 那么话不多说,开始从内

    2024年01月24日
    浏览(34)
  • HTTP1.1、HTTPS、HTTP2.0 、HTTP3.0

    优点: 整体方面:简单、灵活和易于扩展、应用广泛和跨平台 性能方面:长连接、管道网络传输解决请求队头阻塞(没有使用) 缺点: 安全方面:无状态、明文窃听、伪装、篡改 性能方面: Header未经压缩就发送,只能压缩body,头部冗长 每次发送相同的首部造成比较多的

    2024年02月16日
    浏览(37)
  • 说说 HTTP1.0/1.1/2.0 的区别?

    HTTP 协议的第二个版本,第一个在通讯中指定版本号的HTTP协议版本 HTTP 1.0  浏览器与服务器只保持短暂的连接,每次请求都需要与服务器建立一个 TCP 连接 服务器完成请求处理后立即断开 TCP 连接,服务器不跟踪每个客户也不记录过去的请求 简单来讲,每次与服务器交互,都

    2024年04月08日
    浏览(81)
  • Http1.0 、1.1、2.0、3.0的区别

    巨人的肩膀 3.1 HTTP 常见面试题 | 小林coding HTTP1.0与HTTP1.1 HTTP1.1在HTTP1.0上的改进: 使用长连接的方式改善了HTTP1.0中短连接造成的性能开销 支持管道网络传输,不必等到上一个的响应,就可以接着发送第二个请求,减少整体响应时间 HTTP1.1的缺点: HTTP报文中的头部信息未经压

    2024年02月01日
    浏览(41)
  • 详解HTTP1.0、1.1、2.0版本区别/优化

    1、HTTP 1.0 是一种无状态,无连接的应用层协议 规定浏览器和服务器保持短暂的链接。 浏览器每次请求都需要与服务器建立一个TCP连接,服务器处理完成以后立即断开TCP连接(短连接),服务器不跟踪也每个客户单,也不记录过去的请求(无状态)。 这种无状态性可以 借助

    2023年04月08日
    浏览(69)
  • http1.0、http1.1 http 2.0

    HTTP/1.0是无状态、无连接的应用层协议。 无连接:每次请求都要建立连接,需要使用 keep-alive 参数建立长连接、HTTP1.1默认长连接keep-alive   无法复用连接,每次发送请求都要进行TCP连接,TCP的连接释放都比较费事,会导致网络利用率低 队头阻塞 队头阻塞(head of line blocking),

    2024年02月16日
    浏览(36)
  • FireFox禁用HTTP2

    最近需要调试接口,但是,Chrome都是强制使用h2协议,即HTTP/2协议。为了排除h2协议排除对接口调用的影响,需要强制浏览器使用HTTP1协议。 设置firefox的network.http.http2.enabled为禁用,这样就禁用http2协议。 这样就强制Firefox使用http1协议,请求后台接口。

    2024年02月10日
    浏览(34)
  • nginx启用HTTP2特性

    本文于2017年2月底完成,发布在个人博客网站上。 考虑个人博客因某种原因无法修复,于是在博客园安家,之前发布的文章逐步搬迁过来。 修改编译选项 在 configure 的选项中加入 --with-http_v2_module ,由于HTTP2需要SSL的支持,因此如缺少 --with-http_ssl_module 选项,还需要加入 --w

    2024年02月02日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包