Performance 谷歌分析是否有性能开销?

Performance 谷歌分析是否有性能开销?,performance,google-analytics,benchmarking,Performance,Google Analytics,Benchmarking,谷歌分析在多大程度上影响性能 我正在寻找以下信息: 基准测试(包括响应时间/页面加载时间等) 与类似基准的链接或结果 在您的网站上测试Google Analytics(GA)的一种(可能的)方法: 从您自己的服务器提供ga.js(谷歌分析JavaScript文件) 从谷歌每日(测试1)和每周(测试2)更新 我想看看这是如何减少客户端Web服务器和GA服务器之间的通信的 有人做过这些测试吗?如果是,你能提供你的结果吗?如果没有,是否有人有更好的方法来测试使用GA的性能影响(或缺乏影响)?根据我

谷歌分析在多大程度上影响性能

我正在寻找以下信息:

  • 基准测试(包括响应时间/页面加载时间等)
  • 与类似基准的链接或结果
在您的网站上测试Google Analytics(GA)的一种(可能的)方法:

  • 从您自己的服务器提供ga.js(谷歌分析JavaScript文件)
  • 从谷歌每日(测试1)和每周(测试2)更新
  • 我想看看这是如何减少客户端Web服务器和GA服务器之间的通信的


    有人做过这些测试吗?如果是,你能提供你的结果吗?如果没有,是否有人有更好的方法来测试使用GA的性能影响(或缺乏影响)?

    根据我自己的经验,添加Google Analytics并没有改变加载时间。

    根据FireBug的说法,它在不到一秒钟的时间内加载(平均648MS),因此我的其他一些测试约60%-80%的时间是从服务器传输数据,这当然会因用户而异。

    ,出于上述原因。


    我在40多个网站上使用Google Analytics,但这从来都不是任何(即使是很小的)减速的原因,大部分时间都花在获取图像上,由于图像的典型大小,这是可以理解的

    服务器端没有/最小的站点开销

    Google Analytics的HTML是放在网页底部的三行javascript。它实际上什么都不是,并且不会消耗比版权声明更多的服务器资源

    在客户端,页面可能需要一点时间(最多几秒钟)来完成页面显示。然而,根据我的经验,页面中唯一没有加载的部分是谷歌的东西,所以用户可以很好地看到你的页面。你只需要让页面顶部的跳动器再跳动一段时间


    (注意:您需要将您的google analytics代码块放在任何服务页面的底部,这样才能做到这一点。如果代码块放在HTML的顶部,我不知道会发生什么)

    您可以在服务器上托管ga.js,而不会出现任何问题,但是这个想法是,你的用户将从他们可能访问过的某个站点缓存ga.js。因此,下载ga.js,因为它非常流行,在许多情况下只会增加很少的开销(即,它已经被缓存)

    另外,由于网络拓扑的原因,DNS查找在不同的位置的成本并不相同。缓存行为将根据用户是否使用包含ga.js的其他站点而改变

    加载javascript后,ga.js会与Google服务器进行通信,但这是一个异步过程

    希望这有帮助

    没什么明显的

    对Google的调用(包括DNS查找、加载Javascript(如果尚未缓存)以及实际的跟踪器调用本身)应该由客户端浏览器在单独的线程中完成,以实际加载页面。当然,DNS查找将由底层系统完成,据我所知,不会算作浏览器内的查找(浏览器对每个站点使用的请求线程数量有限制)

    除此之外,浏览器将与所有其他嵌入式资源并行加载Google脚本,因此在最坏的情况下,下载所有内容所需的时间可能会略微增加(我们是以毫秒为单位进行讨论的,不引人注意。如果浏览器最后加载了Google脚本,或者您的页面上没有太多外部资源,或者您的页面的外部资源由浏览器缓存,或者Google脚本由浏览器缓存(极有可能)这样你就看不出有什么不同了。总体来说,这只是一个微不足道的问题,大致来说,效果就像在你的页面上贴一张额外的小图片一样

    大概只有在onLoad事件(等待外部资源加载)时才会触发某些行为,这才可能产生具体的区别,并且Google服务器停止/变慢。后者不太可能经常发生,但如果是这种情况,那么在下载脚本之前,onLoad甚至不会启动。您可以使用各种“当DOM加载时”来解决此问题事件,通常响应速度更快,因为您也不必等待自己的脚本/图像以这种方式加载

    如果你真的那么担心页面加载时间的影响,那么看看“网络速度”第节,它将量化这一点,并为您绘制一个漂亮的图表。我鼓励您自己这样做,因为即使其他人向您提供您要求的数字和基准,对于您自己的站点来说,这将是完全不同的。

    Steve Souders(客户端性能专家)提供了一些关于:

    • 并行加载外部JavaScript文件的不同技术
    • 它们对加载时间和页面呈现的影响
    • 浏览器显示何种类型的“正在进行”指示器(例如状态栏中的“加载”、沙漏鼠标光标)

    从客户端的角度来看,向页面加载任何额外的javascript都会增加下载时间。您可以通过在页面底部加载javascript来改善这一点,这样即使未加载GA,也可以呈现页面。我会避免缓存,因为您将失去页面的客户端缓存优势。如果nt将其从其他页面缓存,您的页面请求将由客户端本身填充。如果您将其更改为从站点加载,则即使客户端已经有代码(很可能),也需要下载。将任务添加到软件进程以避免从Goo加载文件 GET /ga.js HTTP/1.1 Host: www.google-analytics.com ... If-Modified-Since: Mon, 22 Jun 2009 20:00:33 GMT Cache-Control: max-age=0 HTTP/1.x 304 Not Modified Last-Modified: Mon, 22 Jun 2009 20:00:33 GMT Date: Sun, 26 Jul 2009 12:08:27 GMT Cache-Control: max-age=604800, public Server: Golfe