【问题标题】:What are the advantages and disadvantages of using a content delivery network (CDN)? [closed]使用内容交付网络 (CDN) 的优点和缺点是什么? [关闭]
【发布时间】:2011-01-09 20:35:21
【问题描述】:

我正在通过Best Practices for Speeding Up Your Web Site from developer site of Yahoo...

【问题讨论】:

    标签: cdn


    【解决方案1】:

    使用内容分发网络 (CDN) 的优缺点是什么?

    • 缺点可能是要花钱,而且会增加部署过程的一些复杂性。

    • 主要优势是提高了将内容交付给用户的速度。

    何时使用 CDN?

    • 当您拥有一个具有某种类型静态内容(图像、脚本、CSS 等)的流行公共网站时,这将是最有效的。

    CDN 是性能提升器吗?

    • 一般来说,是的。当用户提出特定请求时,将动态确定最接近该用户的服务器(根据服务器和用户之间的最小节点数)。这样可以优化向该用户交付内容的速度。

    【讨论】:

    • 各有利弊。这取决于您的特定站点。例如,对于仅使用 jQuery 和一些自定义脚本的小型站点,则使用 CDN。但是,如果您有很多带有自定义 Bootstrap 的库,而您不想要每个 Bootstrap js 插件,那么不要使用 CDN。将您所有的 js/css 合并到一个文件中,以实现更好的压缩,这可能会导致更快的下载速度和页面渲染。测试每个场景 - CDN/No-CDN,每个都有缓存和没有缓存,看看哪个更快。使用 FF/Chrome 网络工具测试每个工具的性能。
    【解决方案2】:

    如果大量内容来自 CDN,CDN 就是性能提升器。

    通常您每次都有两个连接来获取每个域的内容 所以每个项目都是一个连接。

    如果您在 CDN 上拥有来自其他域的内容,您的网站就有更多连接,并且您的网站加载速度会更快。

    我通常将 CDN 用于 JavaScript 库,并且仅在我信任 CDN 的情况下使用 并检查您要使用的 CDN 的正常运行时间。

    【讨论】:

      【解决方案3】:

      另一个需要考虑的事项(最近被推到我们身上):您的客户可能会阻止 CDN!我正在使用 Microsoft 的 jQuery CDN,去年秋天我们从 microsoft.com 主机名更改为 ajax.aspnetcdn.com(以避免下载 jQuery 时不需要的 cookie)。从那以后,我们有几个客户的网络过滤器阻止了 aspnetcdn.com,不得不手动将其列入白名单。

      我们将继续使用 CDN,但它让我们看到了它可能导致的另一个问题。

      【讨论】:

      • 需要注意的非常重要的事情。
      • 更新:我们不得不停止使用 CDN 并返回自己托管 jQuery,因为近十几个客户阻止了它。
      • 这也发生在我的工作中(我不应该命名的主要网站)。
      • 考虑在没有配置 vpn 的情况下无法访问 Google 的中国用户。 @n8wrl 感谢分享您的案例!
      【解决方案4】:

      每个 CDN 提供商都不同,但您应该真正了解他们的网络以及它可能如何影响您的目标受众,尤其是如果您的网站受众主要集中在世界某个地方。

      在我们的测试中,我们发现大多数用户(取决于他们从哪个 ISP 连接)没有看到任何性能优势,因为我们正在研究使用的 CDN 提供商没有与他们的上游提供商配对。数据包没有沿着“主管”路由,如果我们继续前进,性能将会下降。

      话虽如此,上述情况可能并不常见,但测试仍然是个好主意。使用来自 CDN 的资源构建您的网站版本,并在不同的语言环境和不同的连接上进行测试并衡量结果。

      还有其他好处;浏览器利用多个域,同时请求更多,服务器负载更少等。一般来说,CDN 是一个不错的选择。

      【讨论】:

        猜你喜欢
        • 2016-03-23
        • 1970-01-01
        • 2011-04-01
        • 1970-01-01
        • 2013-06-30
        • 2011-05-25
        • 1970-01-01
        • 2010-09-12
        相关资源
        最近更新 更多