什么时候主持使用CDN而不是什么时候?

时间:2012-11-10 15:49:08

标签: jquery cdn bower

这个问题试图找出是否有必要权衡CDN的好处,转而采用更有条理和更有条理的供应商代码管理。


我知道建议使用CDN来提供像jquery这样的供应商库。

然而,我今天正在阅读bower,这让我很奇怪。通过bower,我可以以非常有条理的方式轻松管理应用程序的所有依赖项。我最终可以将它们打包在一个vendor.js文件中(使用yeoman,brunch或简单grunt),它将成为script标记中html中的服务器。

然而,虽然这种方法可以让我的生活更轻松,但它的缺点是什么?我能想到以下几点:

  • 很有可能我正在使用的许多库已经缓存在用户的浏览器中。
  • 通过将所有内容放在一个vendor.js文件中,浏览器最终将缓存此文件,但每当我添加新的第三方依赖项时,即每次更改供应商文件时,我都会遇到问题。浏览器必须重新加载该文件(从而放弃原始vendor.sj文件的缓存)

这样做,花时间将html中的依赖项作为<script>标记进行管理,以提供更好的性能/加载时间。

你觉得我的思维方式有问题吗?使用bower组织代码的好处是否足够令人信服?毕竟,它就像骨干一样。是的,骨干应用程序对于小型应用程序来说更重,它包含更多代码..但从开发的角度来看,它是值得的!

干杯(感谢您重新编辑问题的评论!)

1 个答案:

答案 0 :(得分:5)

在您可以使用CDN并且您的项目要求允许使用CDN。它通常更快,浏览器可能已经从其他站点缓存了这些文件。

我构建的大多数网站都使用CDN的jQuery。但是,您会发现有时这些CDN会被特定国家/地区阻止。无论如何,有一个后备并没有什么坏处。您可以从CDN加载jQuery,如果失败则回退到您自己的服务器。