提供CDN中的javascript库与将它们组合为一个并作为单个http连接

时间:2018-12-06 09:45:33

标签: javascript http pagespeed

这是关于提高页面速度的问题。

在给出以下情况时,该选择哪一种?

场景1

您的头脑中有10个著名的js库,并且都从受人尊敬的CDN存储库提供服务。 (对于某些人来说,这可能意味着10个HTTP连接)

场景2

您选择自己将这些库合并为一个文件,并在1-HTTP连接下将它们作为一个文件提供

我之所以倾向于第一个是因为

由于那10个库是“著名的”库,因此它们很可能已经在用户浏览器的大多数缓存中,从而避免了所有10个连接。

有人对此有话要说吗?

我还很好奇的是,当Google评估此页面时,是将这10个HTTP连接假定为10,还是将其作为jQuery的事实,所以我不会对您使用它!

1 个答案:

答案 0 :(得分:0)

即使将它们全部合并为一个负载,即使是从您自己的服务器,也似乎是一个很大的负担。您不能延迟加载其中之一(例如,通过webpack)-无论如何,都必须预先加载它们。

同意,分别加载它们可以利用任何缓存(假设它们是相同的版本)。

一个有趣的点:HTTP2通过服务器推送模式解决了单独的文件/请求问题-这个想法是使用单个连接来推送已知文件,而客户端不必分别请求它们。

不知道它对CDN是否有效-可能必须自助服务以利用CDN。