如何加快谷歌adsense和分析加载时间?

问题描述:

这可能属于“你不能”的范畴,但我认为至少看看我能做些什么可能是明智的。如何加快谷歌adsense和分析加载时间?

根据FireBug,我的页面加载时间的主要瓶颈似乎是加载的HTML和谷歌的AdSense和分析负载之间的差距。请注意,在下面的屏幕截图中,初始GET只需要214毫秒,adsense +分析加载大约需要130 ms。但是,由于初始GET与AdSense/analytics加载之间的大停顿,整个页面加载时间为1.12秒。

如果它有任何不同,网站将从ASP.NET MVC RC1堆栈运行。

alt text http://kevinwilliampang.com/pics/firebug.jpg

更新:移除AdSense和分析后,我仍然看到一个缓慢的响应时间。将鼠标悬停在最初的GET请求上,我看到以下速度:96ms接收数据,736ms DOMContentLoaded(事件),778ms'加载'(事件)。我在猜测,性能是我自己的jQuery JavaScript的结果,它与($ document).ready()事件绑定在一起。

+0

如果你试试这个简单的“Hello World”的ASP.NET MVC页面上会出现什么情况?时间改变了吗? – 2009-02-15 23:09:07

+0

是的。我认为它与我包含在我的.js文件中的第三方库有关。我有jQuery的,jQuery的验证,和jQuery自动完成我的.js以及一些$(文件)。就绪东西文件。当我删除.js包括时,时间会变得更好。 – 2009-02-16 01:26:55

+0

这是一个令人感到有点惊讶 - 其中大量使用jquery和AdSense的网站。你有能力给我们代码或URL吗? – annakata 2009-02-16 08:33:28

您应该将分析代码放在页面的底部,以便其他所有内容都先载入。除此之外,我认为你可以做的不多。

编辑:其实,我刚刚发现这个有趣的blog post,通过托管自己的urchin.js文件来加速分析。也许值得一看。

可能没有任何事情可以做,除了把这些包括在关闭的身体标记之前,如果你还没有做的话。 JavaScript包括块并行HTTP请求,这就是为什么他们应该被禁止的原因<head>

我从来没有在堆栈溢出中使用Firebug,我们也使用过Google Analytics。

我只是跑痕迹,我看到了

http://www.google-analytics.com/__utm.gif?...

DOMContentLoaded事件后直接破天(蓝线)请求。所以我首先怀疑AdSense。你有没有尝试禁用?

就这样,我恰好在本周对此进行了相当深入的研究。长话短说,拧。正如其他人所说的,你可以做的最好的事情就是把它放在请求列表的底部,并让你的代码的其余部分依赖于准备好而不是onload事件 - jQuery在这里非常好。 js的某些部分是静态的,所以如果您为了维护目的而留意它,您可以在本地克隆它。

谷歌代码并不像它在这个领域那样有帮助*,但它是他们的球赛,任何你需要改变它的东西都会变得复杂和有风险。理论上,在头文件中包含一个非阻塞脚本调用是可能的,但考虑到额外的抽象,不太可能让您受益,并且最终使用adsense您的有效内容是html源代码,而不是脚本。

*有可能谷歌有一个很好的理由,但没有什么我可以从代码中推断出它们公开

当然谷歌的服务器会加载最快的部分,因为你的ISP和大多数互联网服务供应商将有文件的本地缓存呢?

你可以注入脚本插入页面加载头也许,但我不知道怎么说效果的urchin.js。

可能是您的网页只是需要那么长时间来分析?似乎没有任何网络相关事件正在发生。在AdSense /分析请求甚至被解雇之前,它只需等待一秒钟左右。 我不认为你有几百个表的页面或东西吗? ;)