首页 » 继续优化我们的页面以发出更少

继续优化我们的页面以发出更少

这种低效的资源等待就是为什么像连接 JavaScript 或 CSS 文件这样的优化可以帮助您的网站加载更快的原因。但这样的改革只是权宜之计。虽然您可以(并且应该)、更小的请求,但只有在我们“修复道路”并改善网络通信的基本方式时,我们才能真正进入下一个性能水平。具体来说,我们需要找到更好的方法来利用这些网络连接。 

这就是 HTTP/2 的用武之地。

解决方案:HTTP/2 

从本质上讲,HTTP/2 是关于更有效地 电话号码资源  利用底层网络连接。 HTTP/2 改变了请求和响应在网络上的传输方式,这是以前版本的 HTTP 的一个重大限制。

HTTP/2 的工作原理是与服务器建立单个连接,然后通过该连接“多路复用”多个请求以同时获得多个响应它看起来像这样:

 

浏览器使用相同的连接

但不再一次请求一个项目。这里我们看到浏览器 通过绘制所有可能性 接收到文件#3(可能是一张图片)的响应头,然后接收到文件#1的响应主体。然后,在继续处理文件#2之前,开始接收文件#3的响应主体。

把多路复用想象成去杂货店,只需给你的配偶打一次电话 邮寄线索 就可以得到完整的清单:“好的,我们需要牛奶、鸡蛋和黄油。检查一下。”将其与 HTTP/1.1 进行比较,这就像反复呼叫您的配偶:“我们需要牛奶吗?好的,再见。” “你好。我们还需要鸡蛋吗?是的,没错。” “好的,抱歉,最后一个问题,我们还需要面粉吗?不,好吧。”

所有数据都可以通过该连

接更高效地连接。服务器可以在准备好时向浏览器提供数据。不再有“发出请求;等待时不做任何事;下载响应”的循环。尽管理解起来有点复杂,但这种方法有几个优点。

首先,当您等待某个资源完成下载时,网络连接不会处于空闲状态。例如,您的浏览器实际上可以在图像 1 完成下载之前完成图像 2 的下载,而不是等待一个图像下载完成后再开始下载第二个图像。

这也可以防止所谓的阻止阻塞:当大型/缓慢的资源(例如 1 MB 的背景图像)阻止所有其他资源下载,直到它们完成为止。