捆绑vs使用jsDelivr(CDN)?

时间:2013-12-05 13:16:59

标签: asp.net-mvc asp.net-mvc-4 bundling-and-minification

我最近遇到了以下

 http://www.jsdelivr.com

这是一个托管许多js文件的cdn。但我很困惑,我打算在asp.net mvc中使用捆绑将一些js文件捆绑在一起并将其存储为1个js文件并托管我的内容。

但似乎我现在可以从上面的CDN下载。

推荐使用,假设我有8个js文件并将它们捆绑在一起成为1个js文件,就浏览器而言,实际上是一个调用,但是我的网站。

或者使用CDN,但这将是8个电话(8​​个js文件),但当然通过最接近你所在国家的CDN进行托管。

哪个是可取的?

2 个答案:

答案 0 :(得分:2)

你应该评估:

1)您是否希望确保用户的低延迟?

然后取决于您的客户/用户所处的位置。如果与服务器相比,jsdelivr.com的延迟较低,我建议您使用他们的服务,因为这会加快他们的加载时间。但请记住,大多数浏览器只能处理4-6个并行下载,因此请确保在两个选项之间进行经验测量 - 即使延迟较高,捆绑的解决方案也可能更快。

2)您是否要卸载服务器负载?

通过引用他们的服务器,您将减少来自您服务器的传出流量。如果您希望服务器上的负载很重,您可能希望使用他们的服务来卸载数据和CPU负载。如果你在EC2上托管,这可能是一个具有成本效益的解决方案......

答案 1 :(得分:0)

在HTTP / 2中,您不应缩小外部资源。单独加载所有这些,HTTP / 2将共享相同的HTTP连接,并在一个连接中下载所有文件。这和捆绑一样。

所以,现在,转到JSDelivr并且不要捆绑文件。