CDN托管了javascript库vs下载和缩小

时间:2014-12-29 00:13:18

标签: javascript jquery performance compilation cdn

主要在这里寻找一些信息。

最近更改了我的设置以使用Grunt和LiveReload。它非常适合从scss文件创建小的缩小css文件,所以非常棒。

但是,JS方面最好的是什么?我目前使用CDN来处理大多数事情,例如jQuery,Isotope,TagIt等。

我有一些自定义的JS文件包含我自己的网站代码,所以我可以将它们连接起来并缩小。我知道有很多请求会影响性能,因此会缩小和连接。

但下载所有库并将它们编译成一个JS文件以包含在我的网站上是否更好?或者保持外部链接到CDN?

1 个答案:

答案 0 :(得分:4)

这里有两个注意事项:

  • 安全
  • 性能

安全

在安全性方面,托管JavaScript本身会让您负责,而依赖来自外部域的JavaScript本质上信任该域具有您域的安全性(根据您对该第三方的信任程度,可能或可能不被接受)。如果您使用Content-Security-Policy等高级安全设置,则可能需要执行一些额外的工作以允许这些外部托管的脚本(例如,明确将script-src中的CDN域列入白名单。)

<强>性能

在性能方面,使用CDN托管版本 - 特别是如果它很受欢迎 - 可能会为您提供更好的缓存;但是,自己托管并将其与其他脚本相结合可能会产生更少的请求。就实际速度而言,您需要进行一些自己的测量(我建议使用实际用户流量进行a / b测试,这样可以让您更好地了解真实用户是否已拥有CDN托管版本资源是否缓存。)