`
suqing
  • 浏览: 186745 次
  • 性别: Icon_minigender_2
  • 来自: 杭州
社区版块
存档分类
最新评论

dynaTrace之二 —— JavaScript和AJAX性能最佳实践

阅读更多

 

原文地址:Best Practices on JavaScript and AJAX Performance

同类阅读: dynaTrace之一 —— 网络请求和往返的最佳实践

 

dynaTrace AJAX Edition有独一无二跟踪页面JS执行的能力。它还能跟踪到浏览器的DOM,获取方法的参数和返回值。下图就是一个脚本异常的JS跟踪图,在PurePath视图中:

 

通过JS这个级别的执行细节,很容易识别运行缓慢的js处理程序、自定义js代码、低效的访问DOM,代价昂贵又低效的第三方框架比如jQuery==。

 

标记阻塞的脚本和长时间运行的脚本

 

当脚本开始下载,然后浏览器执行,浏览器通常会停止所有其他下载。这个行为很容易从newwork视图看出来:

 

 

The dynaTrace AJAX Edition 时间轴视图显示了这个期间发生的详情:

 

 

延迟加载JS文件

页面应该尽量快地下载所有的资源以提高第一印象时间加载时间。谷歌和雅虎建议JS置底。Google’s Best Practices谷歌的最佳实践描述了在onLoad事件处理程序动态添加脚本标签的JavaScript的DOM延迟加载。

优化JavaScript执行

除了又换js的加载顺序,js代码本身的效率就可以提高。dynaTrace AJAX Edition 提供了两种视图来分析js执行:

JavaScript/AJAX面板有点类似于Hotspot面板,分析页面内所有的js执行,并提供汇总清单,显示所有方法的性能。列表以脚本块分行和外部如jQuery库的调用。这个列表给出了改进性能的良好出发点。其中Back Trace显示了谁引发了所选的活动,而Forward Trace显示了这个活动出发了哪些其他的活动。点击Back Trace或 Forward Trace中树的节点,会在最下面显示相关的js源代码:

 

 

另一个有趣的视图是PurePath视图。它显示了所有浏览器的活动,包括Script标签或时间句柄出发了哪些js的执行,还有网络请求和呈现的时间。TimeLine视图下双击脚本执行块或者从HotSpot视图的方法进入PurePath视图,显示了具体路径:

 

 

有这些深入的执行跟踪,很容易识别时间花在哪儿了。PurePath视图还显示了实际的js代码。糟糕的性能往往是因为过多使用字符操作,DOM操作,用CSS选择器查找DOM对象,本身就存在问题的第三方js库和过多或长期运行的XHR调用。具体有以下几点:

 

低效的css选择器:具体细节参考《jQuery提升性能的代码规范

太多的XHR请求:使用jQuery的很容易依赖AJAX从服务器获取额外的内容

一个典型的例子是

 

 

 

同类阅读: dynaTrace之一 —— 网络请求和往返的最佳实践


 

 

分享到:
评论

相关推荐

    dynatrace-AJAX-edition软件

    这里我们要介绍的是“dynatrace-AJAX-edition”——一款专注于前端性能测试的利器。 “dynatrace-AJAX-edition”是Dynatrace公司推出的一款强大工具,其主要功能在于帮助开发者检测和分析AJAX应用的性能。AJAX...

    dynatrace-Ajax前端性能测试工具

    "dynatrace-Ajax"是一款专业的前端性能测试工具,它专注于帮助开发者分析和优化网页加载速度、用户交互响应时间以及JavaScript执行效率等关键性能指标。 **一、什么是 dynatrace-Ajax** dynatrace-Ajax 是 ...

    dynatrace-AJAX-edition

    Dynatrace AJAX Edition是一款专为Internet Explorer平台设计的JavaScript性能分析工具,它为开发者和性能测试人员提供了深入洞察网页应用性能的能力。这个工具的核心功能在于帮助用户理解和优化AJAX(Asynchronous ...

    dynaTrace_Ajax版使用指南

    【dynaTrace_Ajax版使用指南】是一篇详细介绍如何使用dynaTrace Ajax版本的文档,旨在帮助用户理解和解决Web 2.0和Ajax应用程序中的性能和功能问题。该指南特别强调了在前端页面生命周期解析方面的详细性,适用于...

    dynaTrace AJAX

    【 dynaTrace AJAX 】是IBM推出的一款专为前端Web应用程序性能优化设计的强大工具,尤其在处理AJAX(Asynchronous JavaScript and XML)技术时表现出色。它提供了深度的诊断能力和实时性能监控,帮助开发者和运维...

    dynatrace-AJAX-edition-4.2.0.1528.zip

    Dynatrace AJAX Edition 4.2.0.1528 是一款专为优化基于AJAX(Asynchronous JavaScript and XML)技术的Web应用程序性能而设计的强大工具。这个版本的发布,旨在提供更高效、更精准的性能监测与分析,帮助开发者解决...

    dynatrace-AJAX-edition-4.5.0.2031.msi

    dynatrace-AJAX-edition-4.5.0.2031.msi 目前最好用的前端性能分析工作

    dynatrace-AJAX-edition-4.4.0.1880.part2.rar

    dynaTrace Ajax:前端性能分析利器

    IE 性能分析工具:dynaTrace AJAX-part1

    dynaTrace AJAX 是一个页面性能分析工具,是针对浏览器 IE 6 ~ 8 的。它可以用来分析页面渲染时间、DOM方法执行时间,甚至可以看到 JS 代码的解析时间。JQuery 的老爹 John Resig 也鼎力推荐了一把。

    设计开发及运维高效协作——Dynatrace助上汽通用打造性能测试闭环.pdf

    "设计开发及运维高效协作——Dynatrace助上汽通用打造性能测试闭环" 本资源摘要信息主要介绍了上汽通用汽车公司如何通过Dynatrace解决方案来构建高效的性能测试闭环,提高了整体性能测试的效率和价值。 Dynatrace...

    使用dynatrace-ajax跟踪JavaScript的性能

    DynaTrace 致力于分析后台应用性能的表现已经好几年了,最近,他们通过发布dynaTrace Ajax Edition进入了前端性能分析领域. 它是一个运行在IE下的BHO免费工具. 虽然我喜欢Firefox和它下面的所有插件,但我知道基于IE...

    dynaTrace Ajax

    ** dynaTrace Ajax:Web前端性能优化的利器** 在当今的互联网时代,Web应用程序的性能已经成为用户体验的关键因素。为了提供快速、流畅的交互,开发者需要深入理解页面加载和执行过程中的每一个细节。这就是dy

    dynatrace-AJAX-edition-3.4.0.985

    dynatrace 页面前端渲染速度监控,支持IE8、9。也可查看网络、服务器对单个URL的响应速度。

    dynatrace3.1.0.763

    《深入理解Dynatrace 3.1.0.763——AJAX Edition》 Dynatrace是一款全球领先的性能管理工具,尤其在应用程序性能监控(APM)领域有着卓越的表现。这里的"3.1.0.763"是其版本号,代表着该软件在不断迭代优化后的一...

    dynatrace-AJAX-edition-4.4.0.1880.part1

    dynaTrace Ajax:前端性能分析利器

    Web性能测试工具dynaTrace的使用说明

    dynaTrace Ajax是一个详细的底层追踪工具,它不仅可以显示所有请求和文件在网络中传输的时间,还会记录浏览器Render、CPU消耗、JavaScript解析和运行情况等详细的信息,而这些也只是dynaTrace Ajax的冰山一角。...

    dynaTrace AJAX-part2

    这个工具可以跟踪分析IE浏览器在网页展现通讯的全过程中都做了什么,分析页面加载,cache使用,network,javascript等等。更可以深入分析javascript代码具体执行的位置,即可以直接查看javascript源代码,从而精确...

    dynatrace-AJAX-edition-3.7.0.1155

    DynaTrace AJAX是一个运行在IE浏览器下的免费页面性能分析工具,它可以支持主流的IE6、IE7、IE8浏览器。这款工具正是DynaTrace为进入前端性能分析领域而发布的。您可以利用它来分析页面渲染时间、DOM方法执行时间,...

Global site tag (gtag.js) - Google Analytics