代码之家  ›  专栏  ›  技术社区  ›  Andreas Grech

为什么从Google的Ajax库API加载JS框架很重要?

  •  4
  • Andreas Grech  · 技术社区  · 16 年前

    我记得在某个地方读到,从Google的Ajax库API加载JS框架比使用本地托管的框架要好得多。

    这意味着,而不是:

    <script src="jquery.js"></script>
    

    从Google加载框架:

    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
    

    我认为优势主要在于缓存,但我不确定。

    有人能向我解释一下为什么从Google加载框架而不是在本地托管框架更好?

    5 回复  |  直到 16 年前
        1
  •  9
  •   jamesaharvey    16 年前

    很可能另一个网站也会使用来自谷歌服务器的相同JS文件,因此该文件已经被您的浏览器缓存,不需要为您的网站再次下载。

    退房 this 文章还提供了一些其他好处。

        2
  •  4
  •   Trident Splash    16 年前

    让谷歌托管你的javascript libs有利弊。

    赞成的意见:

    • 谷歌的cdn比你的好得多
    • 谷歌收集到的关于你的网站和使用情况的数据
    • 用户可能从其他网站缓存了libs

    欺骗:

    • 1个额外的DNS查找
    • 谷歌收集到的关于你的网站和使用情况的数据
    • google可能会被关闭或屏蔽(唯一但可能发生的情况是,一些疯狂的公司政策)
    • 1用户浏览器必须建立的新连接
    • 在Safari中,jquery文件不是gzip提供的

    根据我的经验,我在本地托管方面取得了很好的效果,因为我将Google的jquery lib与我的其他javascript代码进行了统一,gzip了它,并且在统一的javascript文件中获得了很高的压缩率。通过这种方式,浏览器使用一个已经打开的连接来下载一个“小”文件,其中包含所有内容。

        3
  •  3
  •   me_and    16 年前

    首先,这意味着负载是在谷歌的服务器上,而不是你自己的服务器上,这将节省你的服务器处理时间和带宽。其次,对于绝大多数互联网用户来说,谷歌的服务器很可能比你自己的快。

    另外,从谷歌的角度来看,它可以让他们获得更多关于人们如何使用互联网和他们的API的数据。

    ETA:另外,如果谷歌更新了他们的API,这意味着你将一直使用最新版本。这可能是件好事,也可能不是好事(错误修复与后台兼容性)。

        4
  •  0
  •   jldupont    16 年前

    归根结底是 足迹 :Google有一组分布式网络位置,因此可以确保向几乎所有地方的低延迟交付。

    所以,如果你尽可能多地从谷歌服务,你的客户 QoE(经验质量) 会改善。

    1. 客户之所以关心这一点,是因为他们获取网页的速度越快,所做的事情就越多。

    2. 谷歌关心这一点是因为用户获得网页的速度越快,他们每天可以提供的服务就越多,因此 金钱$ 他们(当然是通过广告)制作的。

        5
  •  0
  •   Cyril Gupta    16 年前

    为什么只有谷歌?微软也推出了一个cdn,最近我链接到MS cdn而不是谷歌来获取jquery。

    如果我把你的问题改成“从cdn链接有什么好处?”我会这样回答的。

    1. cdn将有许多服务器,并且可能有一个地理位置很近的服务器,比您的服务器服务得更好(更快),但这并不重要,因为jquery通常只是您数据的一小部分。

    就是这样。我想不出还有什么别的好处。一个也没有。Nada。零。

    事实上,我可以想到一个缺点,那就是你对你的内容的控制力会稍差一点。

    别以为大军会慷慨地为你提供免费带宽。控制你的网站是他们的事。