HTTP/1.1与HTTP/2有什么区别?

HTTP/2是2015年发布的对HTTP/1.1的重大升级,旨在减少延迟,提高Web通信效率。通过二进制框架层,HTTP/2实现了多路复用,允许并发请求和响应,解决了HTTP/1.1中的行头阻塞问题。此外,HTTP/2引入了流优先级和服务器推送功能,以优化资源请求和响应的顺序。同时,头压缩技术HPACK进一步减少了标头的传输大小。HTTP/2在资源管理和性能优化方面带来了显著改进。
摘要由CSDN通过智能技术生成

介绍
超文本传输​​协议(HTTP)是一种应用协议,自1989年发明以来,它一直是事实上在万维网上进行通信的标准。从1997年发布HTTP/1.1到最近,对它的修改很少。协议。但是在2015年,重新构想的版本称为HTTP/2投入使用,它提供了几种减少延迟的方法,尤其是在处理移动平台以及服务器密集型图形和视频时。此后HTTP/2变得越来越流行,据估计,世界上约有三分之一的网站都支持HTTP/2。在这种瞬息万变的格局中,Web开发人员可以从了解HTTP/1.1和HTTP/2之间的技术差异中受益,从而使他们可以就不断发展的最佳实践做出明智而有效的决策。

阅读本文之后,您将了解HTTP/1.1和HTTP/2之间的主要区别,重点介绍HTTP/2为实现更有效的Web协议而采取的技术更改。

背景

为了具体说明HTTP/2对HTTP/1.1所做的特定更改,让我们首先从较高的角度看一下它们的历史发展和基本工作。

HTTP/1.1

HTTP由Timothy Berners-Lee于1989年开发,作为万维网的通信标准,HTTP是一种顶级应用程序协议,它在客户端计算机与本地或远程Web服务器之间交换信息。在此过程中,客户端通过调用类似或的方法向服务器发送基于文本的请求。作为响应,服务器将HTML页面之类的资源发送回客户端。GETPOST

例如,假设您正在访问域中的网站www.example.com。当您导航到该URL时,计算机上的Web浏览器会以基于文本的消息的形式发送HTTP请求,类似于以下所示:

GET /index.html HTTP/1.1
Host: www.example.com

该请求使用的GET方法,该方法从后面列出的主机服务器中请求数据Host:。响应此请求,example.comWeb服务器将HTML页面返回到发出请求的客户端,此外还包含HTML中要求的任何图像,样式表或其他资源。请注意,在第一次数据调用中,并非所有资源都会返回给客户端。请求和响应将在服务器和客户端之间来回移动,直到Web浏览器收到在屏幕上呈现HTML页面内容所需的所有资源为止。

您可以将这种请求和响应的交换视为Internet协议栈的单个应用程序层,它位于传输层(通常使用传输控制协议或TCP)和网络层(使用Internet协议或IP )之上):

关于此堆栈的较低层,有很多要讨论的内容,但是为了获得对HTTP/2的高层了解,您只需要知道此抽象层模型以及HTTP进入其中的位置即可。

借助HTTP/1.1的基本概述,我们现在可以继续讲述HTTP/2的早期开发。

HTTP/2

HTTP/2最初是SPDY协议,最初由Google开发,旨在通过使用压缩,复用和优先级等技术来减少网页加载延迟。当IETF(互联网工程任务组)的超文本传输​​协议工作组httpbis 将该标准放在一起时,此协议充当HTTP/2的模板,并最终在2015年5月发布了HTTP/2。从一开始,许多浏览器支持这项标准化工作,包括Chrome,Opera,Internet Explorer和Safari。自2015年以来,部分原因是由于该浏览器的支持,该协议的采用率非常高,新站点中的采用率尤其高。

从技术角度来看,区别HTTP/1.1和HTTP/2的最重要功能之一是二进制框架层,可以将其视为Internet协议栈中应用程序层的一部分。与HTTP/1.1(以纯文本格式保留所有请求和响应)相反,HTTP/2使用二进制框架层以二进制格式封装所有消息,同时仍保持HTTP语义,例如动词,方法和标头。应用程序级API仍将以传统的HTTP格式创建消息,但是基础层随后会将这些消息转换为二进制。这样可以确保在与新协议进行交互时,在HTTP/2之前创建的Web应用程序可以继续正常运行。

将消息转换为二进制,HTTP/2可以尝试HTTP/1.1中没有的新的数据传输方法,这是两种协议之间实际差异的根本原因。下一节将介绍HTTP/1.1的交付模型,然后介绍HTTP/2带来了哪些新模型。

投放模式

如上一节所述,HTTP/1.1和HTTP/2共享语义,使用熟悉的方法(如GET和),确保在两种协议之间在服务器和客户端之间传输的请求和响应作为具有标

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值