什么是HTTP/2

什么是HTTP/2

什么是HTTP/2

  要了解什么是HTTP/2 ?先看看什么是HTTP?HTTP是超文本传输协议,构成了万维网数据通信的基础,从本质上讲,HTTP能够检索网络世界中可用的网络连接资源,并且经过几十年的发展,为数字通信提供快速、安全和丰富的媒体。

  HTTP 自1991年推出以来,已经有四次迭代。HTTP/2 于 2015 年发布,是对 HTTP/1.1 协议的重大修订,旨在通过 加速页面 和 减少往返时间 (RTT) 来改善网站的客户体验 ,尤其是在资源密集型网页上。

什么是HTTP/2

  HTTP/2 是对 HTTP 协议的升级,用于管理 Web服务器 和 浏览器之间的通信。新标准通过更好的数据压缩、请求的多路复用和其他改进为更快的页面加载提供便利。许多服务器和浏览器都支持 HTTP/2,开发人员现在可以利用这些新功能来改善网站的响应速度。

什么是协议

  协议通常由三个主要部分组成:Header、Payload 和 Footer。放置在有效负载之前的标题包含诸如源地址和目标地址以及有关有效负载的其他详细信息(例如大小和类型)等信息。有效载荷是使用协议传输的实际信息。

  HTTP/2 的主要目标是通过支持完整的请求与响应复用来减少延迟,通过有效压缩 HTTP 标头字段将协议开销降至最低,同时增加对请求优先级和服务器推送的支持。 为达成这些目标,HTTP/2 还给我们带来了大量其他协议层面的辅助实现,例如新的流控制、错误处理和升级机制。上述几种机制虽然不是全部,但却是最重要的,每一位网络开发者都应该理解并在自己的应用中加以利用。

  HTTP/2 没有改动 HTTP 的应用语义。 HTTP 方法、状态代码、URI 和标头字段等核心概念一如往常。 不过,HTTP/2 修改了数据格式化(分帧)以及在客户端与服务器间传输的方式。通过新的分帧层向我们的应用隐藏了所有复杂性,所有现有的应用都可以不必修改而在新协议下运行。

HTTP/2性能提升

HTTP/2性能提升

  1、二进制协议 :与 HTTP/1.1 使用的文本协议相比,二进制协议消耗更少的带宽,更有效地解析并且更不容易出错。此外,它们可以更好地处理空格、大写和行尾等元素。

  2、多路复用 :HTTP/2 是多路复用的,即它可以通过单个 TCP 连接并行发起多个请求。结果,包含多个元素的网页通过一个 TCP 连接传送。这些功能解决了 HTTP/1.1 中的行首阻塞问题,其中行前的数据包会阻止其他数据包的传输。此更改的主要目的是解决资源消耗请求的问题,并帮助防止请求和响应阻止其他请求。

  3、Header头部压缩 :HTTP/2 使用Header头部压缩来减少 TCP 的慢启动 机制带来的开销 。由于大多数网站都有丰富的图形和内容,客户端请求会导致多个几乎相同的标头帧被发送回浏览器,这可能会导致延迟和不必要的消耗已经有限的网络资源。Header头部压缩机制提供了压缩大量冗余标头帧的能力,并允许服务器维护先前请求中使用的标头列表。

  4、服务器推送 :HTTP/2 服务器将可能使用的资源推送到浏览器的缓存中,甚至在它们被请求之前。这允许浏览器在没有额外请求周期的情况下显示内容,旨在减少用于加载页面的多个资源所带来的网络延迟。什么是网站缓存?WordPress网站怎么使用缓存?

  5、提高安全性 :Web 浏览器仅通过加密连接支持 HTTP/2,从而提高了用户和应用程序的安全性。

  6、流优先级:流优先级是根据分配给每个数据流的依赖关系和权重,优先考虑特定数据流,允许服务器根据最终用户的要求优化资源分配。

HTTP/2 浏览器支持

  HTTP/2 已经提供了 Web 服务器、浏览器和移动支持。为您的网站实施 HTTP/2 时,运行 HTTP1.x 的技术不会受到影响,但需要快速更新以支持新协议。您可以将网络协议视为口语。只有充分理解新语言,才能使用新语言进行交流。同样,应该更新客户端和服务器以支持使用 HTTP/2 协议的数据通信。

  Internet 消费者无需担心配置其桌面和移动 Web 浏览器以支持 HTTP/2。 Google Chrome 和 Firefox 多年来一直支持该技术 ,Apple 早在 2014 年就为 Safari 网络浏览器添加了 HTTP/2 浏览器支持。 Internet Explorer 要求用户运行 Windows 8 以支持最新的应用程序协议。

HTTP/2 浏览器支持

  主要的移动网络浏览器,包括 Android 恰当命名的浏览器、Android 和 iOS 版 Chrome,以及 iOS 8 及更高版本中的 Safari,都支持 HTTP/2 进行移动网络访问。建议互联网用户安装最新稳定版本的移动和桌面 Web 浏览器,以体验 HTTP/2 基准测试中应用协议的最大性能和安全优势。

HTTP/2 服务器支持

  在本地或云端运行服务器的在线服务提供商必须更新和配置 Web服务器以添加对 HTTP/2 的支持。考虑到前面描述的口语类比,访问从这些服务器提供的信息的互联网访问者只能使用 HTTP/2,只要为此目的更新和配置 Web 服务器。

  Nginx 服务器占所有活动 Web 服务器的 66%,拥有对 HTTP/2 的原生支持,而 Apache服务器使用mod_spdy 模块提供 HTTP/2 浏览器支持。该模块由 Google 开发,用于支持 SPDY 功能,例如 Apache 2.2 服务器的多路复用和标头压缩,该软件现在已捐赠给 Apache 软件基金会。什么是Apache?Apache Web服务器概述

  推荐:WordPress网站运行缓慢的原因


晓得博客,版权所有丨如未注明,均为原创
晓得博客 » 什么是HTTP/2

转载请保留链接:https://www.pythonthree.com/waht-is-http-2/

Leave a Comment

Your email address will not be published. Required fields are marked *


Scroll to Top