从CDN加载框架和从服务器本身加载框架之间的区别?

时间:2016-08-20 15:56:35

标签: web

我是网络开发的新手我想知道通过CDN(内容传送网络)加载框架(jquery,bootstrap等...)文件和链接服务器内的文件有什么区别?< / p>

例如:用于加载Jquery

<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>

<script type="text/javascript" src="js/jquery.min.js"></script>

2 个答案:

答案 0 :(得分:1)

如果用户已经拥有本地缓存​​的库副本,则使用CDN将减少页面加载时间。这带来的风险是,如果CDN不可用,则不会提供图书馆。

自己托管将确保只要您的网站启动就可以使用它。

理想情况下,您可以同时执行这两项操作,首先尝试CDN并回退到服务器上的版本。

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
<script>
    if (typeof jQuery == 'undefined') {
        document.write(unescape("%3Cscript src='/js/jquery.min.js' type='text/javascript'%3E%3C/script%3E"));
    }
</script>

答案 1 :(得分:-1)

我更喜欢使用CDN,因为:

  1. 不同的域名
  2. 浏览器将并发连接数(文件下载)限制为单个域。大多数允许四个活动连接,因此第五个下载被阻止,直到完全检索到之前的一个文件。从同一站点下载许多大文件时,您经常可以看到此限制。

    CDN文件托管在其他域上。实际上,单个CDN允许浏览器同时下载另外四个文件。

    1. 可以预先缓存文件
    2. jQuery在网络上无处不在。访问您网页的用户很可能已使用Google CDN访问了某个网站。因此,该文件已由您的浏览器缓存,无需再次下载。

      1. 高容量基础设施
      2. 你可能拥有很棒的主机,但我敢打赌它没有谷歌,微软或雅虎提供的容量或可扩展性。更好的CDN可提供更高的可用性,更低的网络延迟和更低的数据包丢失。

        1. 分布式数据中心
        2. 如果您的主要网络服务器位于达拉斯,那么来自欧洲或亚洲的用户在访问您的文件时必须制作一些跨大陆的电子跃点。许多CDN提供了更贴近用户的本地化数据中心,从而加快了下载速度。

          1. 内置版本控制
          2. 通常可以链接到特定版本的CSS文件或JavaScript库。如果需要,您通常可以请求“最新”版本。

            1. 使用情况分析
            2. 许多商业CDN提供文件使用报告,因为它们通常按字节收费。这些报告可以补充您自己的网站分析,在某些情况下,可能会提供更好的视频观看和下载效果。

              1. 提升效果并节省资金
              2. CDN可以分配负载,节省带宽,提高性能并降低现有托管成本 - 通常是免费的。

                资源:

                1:https://www.sitepoint.com/7-reasons-to-use-a-cdn/

相关问题