BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Firebug 1.5和Firefox 3.6修正严重性能缺陷

| 作者 崔康 关注 0 他的粉丝 发布于 2009年12月31日. 估计阅读时间: 3 分钟 | Google、Facebook、Pinterest、阿里、腾讯 等顶尖技术团队的上百个可供参考的架构实例!

Firebug如今已经成为Web开发人员的必备调试工具之一。不过很多Firebug的用户反映在使用该工具时,Firefox网页浏览性能下降。Rob Campbell在其博客中表示,即将发布的Firebug 1.5和Firefox 3.6将修正这个严重的性能缺陷

Rob Campbell首先解释了Firebug引起Firefox性能下降的原因:

开发人员在启用Firebug的Console/Script面板时,Firebug将启动内部的调试钩子(debugging hooks),不过让人吃惊的是:为了得到精确的调试信息,这些钩子禁用了Firefox的高效Javascript JIT编译器,即使在Firebug关闭的时候。

跟踪(tracing)是Firefox的Javascript引擎(即SpiderMonkey)提高代码执行效率的重要机制。它是Just-in-Time编译器的基础,提高了Firefox 3.5的运行速度,对某些操作甚至是数量级的改善。没有跟踪,JS引擎无法优化代码,从而导致运行速度显著下降。

他特别强调:如果你安装了Firebug,那么你的Firefox浏览器很可能运行缓慢。如果你曾经启用了Console和Script面板并保持这种状态,即使Firebug被关闭也是如此。快速的解决办法是通过菜单禁用Script和Console。

Boris Zbarsky和John Barton在即将发布的Firebug 1.5和Firefox 3.6修正了这个性能缺陷,Rob Campbell已经在内部构建版本中进行了验证。

Rob Campbell表示,甚至连他自己都没有注意到这个性能下降问题,因为他已经习惯了在非JIT的环境下使用Firefox,直到他禁用了Console和Script,才吃惊的发现浏览一些网页变得非常迅速。

Firebug 1.5除了修正了该缺陷之外,还增加了新功能,包括:

  • 引入了名为http-activity-distributor的服务,为Net面板提供更精确的计时功能。
  • 新的中断功能:HTML面板中Break-on-Mutation功能允许你在Javascript修改HTML元素时获得中断;Net面板中Break-on-XHR功能允许你在发送XmlHttpRequest时获得中断。

Firebug 1.5 beta版可以在此下载。

Firefox 3.6正式版已经推迟到2010年第一季度发布,目前读者可以下载到beta版

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

我现在用chrome调试了 by HAI JI

我现在用chrome调试了, 也很方便

Re: 我现在用chrome调试了 by 韩 锋

IE 8 自带的开发人员工具也挺好的

Re: 我现在用chrome调试了 by z m

对于大的JS文件的加载还是firebug要牛!

Re: 我现在用chrome调试了 by Chane Michael

IMHO, IE8的只适合美工,而不适合开发者。

Re: 我现在用chrome调试了 by 王 亮

页面dom结构复杂时,使用ie8的定位慢的要死。

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

5 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT