【发布时间】:2014-04-07 11:35:43
【问题描述】:
我的网页使用了几个 javascript 库,如 jquery、jquery-ui、underscore、backbone 和一些其他知名的 jquery 插件。
现在我面临两难境地,我可以:
使用托管所有这些库的公共 CDN。如果用户使用相同的 CDN 访问了另一个站点,则脚本可能已被缓存。但是由于每个库都是独立的,页面需要包含很多脚本标签,因此需要很多 http 请求。
将所有必需的脚本合并为一个(包括我自己的脚本文件)并将其托管在我自己的服务器上。一切都只有一个请求,但我无法比 CDN 更快地提供脚本,而且我无法利用缓存。
根据您自己的经验,哪个更好?
并且我想估计是否有足够的网站使用提到的CDN(如果许多知名网站都使用它们,那么脚本被缓存的可能性很高),我该如何调查?我尝试用谷歌搜索 script src 属性,但似乎谷歌没有索引。
【问题讨论】:
-
这个问题主要是基于意见的。但是,如果将它们合二为一,为什么您认为浏览器没有使用缓存呢?当然不是在第一次页面加载时,但不太可能所有用户都缓存了来自同一个 CDN 源的所有脚本。
-
@davidkonrad 我了解缓存的工作原理。我的意思是先前请求的免费缓存版本。
标签: javascript performance web browser-cache cdn