不允许我们同时在同一连接上发出

您会注意到浏览器花费大量时间等待每个请求。尽管 HTTP/1.1 多个请求,但浏览器可以尝试通过与同一服务器建立两个连接来加快速度,如下图所示:

 

使用两个连接稍微好一些

但浏览器仍然花费大量时间等待下载。而且我们一次只能下载两个资源。我们可以尝试创建更多的连接来并行下载更多的资源。现代浏览器尝试 whatsapp 数据库 这样做,并且每个服务器可以建立 2-6 个连接。不幸的是,这仍然是一个糟糕的方法,因为每个连接本身的使用效率都很低。由于平均网页有超过 100 个资源,因此一次发出所有这些单独的请求只会增加一些连接的延迟,并且页面加载速度会很慢。

通过查看瀑布图

您实际上可以看到这种低效率。我们在 通过我们的免费指南了解成功 之前的 Moz 帖子中讨论了如何提高首次咬入时间的瀑布,并且我们还提供了有关如何阅读瀑布图的详细指南。大多数瀑布图将显示长绿色段,表示浏览器等待资源下载的时间。这就是网站加载缓慢的主要原因之一,而不是浪费时间等待而不是下载。

这种对资源的低效等待就是集成 JavaScript 或 CSS 文件等优化可以帮助您的网站更快加载的原因。但此类改革只是权宜之计。虽然您可以(并且应该)继续改进我们的页 資料庫資料庫 面以发出更少、更小的请求,但在我们“修复道路”并改进网络通信的基本方式之前,我们不会真正进入下一个性能水平。特别是,我们需要找到更好的方式来使用这些网络连接。

这就是 的用武之地

解决方案:HTTP/2
HTTP/2 的核心是更有效地使用底层网络连接。 HTTP/2 改变了请求和响应通过网络传输的方式,这是 HTTP 早期版本的一个主要限制。

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

http2-多路复用

 

滚动至顶部