【问题标题】:Choosing the most commonly used Content Delivery Network? [closed]选择最常用的内容交付网络? [关闭]
【发布时间】:2014-08-28 01:32:30
【问题描述】:

我们的网站初始加载时间很长。而且我刚刚发现,目前在加载脚本方面确实是一团糟。有多个相同库的副本,我正在尝试将这些副本追溯到真正被使用的那些。所以通过清理这些,我遇到了一些问题:

  1. 如何选择最好的(最受欢迎的)CDN?

    例如,jQuery 提供了 5 种可能的解决方案。我如何确定哪一种是最常见的?据我了解,即使完全相同的文件来自不同的主机,也会再次下载。

  2. 有没有办法检查最终用户是否已经拥有来自 MaxCDN 的 jQuery,如果没有,则检查 Google CDN ...如果这些都不存在,则尝试从所选 CDN 加载副本。如果失败尝试从其他地方加载它,最后是本地副本?

  3. 是否甚至可以检查脚本的最终用户副本来自何处?

  4. 这会对性能产生负面影响还是正面影响?

【问题讨论】:

    标签: cdn


    【解决方案1】:

    如果您有大量脚本,您最好合并和缩小您的脚本,然后从您自己的本地托管 CDN 或您的 Web 服务器提供它们。由于浏览器一次只能下载这么多文件这一事实,通常是请求数量而不是文件大小成为浏览器瓶颈。 (仅供参考:IE7 允许 2 个。IE8+ 和 Chrome 允许 6 个。Firefox 允许 8 个并且限制是可配置的。Source)缩小将减小它们的大小(通常超过 50% 或更多),合并将大大减少下载时间。

    关于您的问题:

    1. 即使您选择了流行的 CDN,也有比不选择更好的机会 用户doesn't already have the jQuery library cached
    2. 没有。 This isn't possible。如果您请求资源,浏览器将尝试 下载它。如果不可用,脚本加载将失败 您可以在那里处理从备用来源下载。这 在 CDN 出现故障的情况下很方便,但对您没有帮助 情况。
    3. 没有。您无法检查他们缓存的 jQuery 版本的来源。这是 可能是因为这样的功能将被证明是一种证券或 侵犯隐私。
    4. 从 CDN 提供资源可能会产生积极影响。然而, 如果您可以从单个文件中提供所有资源,则可以节省字节 以及其他网络请求。

    【讨论】:

    • 但是,如果这些脚本中的大多数是常用的(?)使用的 jQuery 扩展或引导程序,从普通主机获取这些不是仍然有益吗?
    • @ArturKäpp 编辑回答您的问题。
    猜你喜欢
    • 1970-01-01
    • 2011-05-11
    • 2018-11-03
    • 2010-12-15
    • 2011-01-09
    • 2011-09-22
    • 2011-05-29
    • 2011-01-30
    相关资源
    最近更新 更多