【问题标题】:CDN hosted javascript libraries vs downloaded and minifiedCDN 托管的 javascript 库与下载和缩小
【发布时间】:2015-02-25 05:32:58
【问题描述】:

主要是在这里找一些资料。

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

但是,就 JS 而言,什么是最好的?我目前在大多数事情上都使用 CDN,例如 jQuery、Isotope、TagIt 等。

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

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

【问题讨论】:

    标签: javascript jquery performance compilation cdn


    【解决方案1】:

    这里确实有两个考虑:

    • 安全性
    • 性能

    安全

    在安全性方面,您自己托管 JavaScript 会让您负责,而依赖来自外部域的 JavaScript 本质上是信任该域以及您的域的安全性(这取决于您对该第三方的信任程度,可能会或可能无法接受)。如果您使用 Content-Security-Policy 等高级安全设置,您可能需要做一些额外的工作来允许这些外部托管的脚本(例如,专门将 script-src 中的 CDN 域列入白名单)。

    性能

    就性能而言,使用 CDN 托管版本(尤其是如果它很流行的话)可能会为您提供更好的缓存;但是,您自己托管它并将其与您的其他脚本结合起来可能会产生更少的请求。就哪个实际上更快而言,您需要进行一些自己的测量(我建议使用真实用户流量进行 a/b 测试,这将使您更好地了解真实用户是否已经拥有 CDN 托管版本资源是否缓存)。

    【讨论】:

    • 很好的回复,谢谢。现在,我将全部下载并缩小。如果我需要在这种情况下调整它们,可以让我控制。
    猜你喜欢
    • 2011-04-19
    • 2012-02-27
    • 1970-01-01
    • 2017-12-03
    • 1970-01-01
    • 1970-01-01
    • 2014-11-29
    • 2013-08-03
    • 2015-04-06
    相关资源
    最近更新 更多