而面对PLM Suite的巨大而复杂的代码,怎样快速、准确的找出性能瓶颈的呢,一个好的选择就是AQtime,下面简要介绍一下利用AQtime 4.6对ASP.net1.1进行性能分析。
1、 启动AQtime并创建一个新的工程,如下图:
根据上图,将工程类型设置为ASP.NET,并选择进行性能监视,去掉默认的“Profile Entire .NET Code by Routines”以及“Full Check by Routines”(我们没必要对.net Framework以及所有的代码进行监视)。
2、 通过菜单“Project->Add Module”,将虚拟目录/bin下的所有程序集添加到监视工程中来,并创建一个自定义的监视的范围,如下图
Type为Including,Level为Routine,此操作表示我们创建一个方法级的进行监视的范围
通常来说只需要对结果按“Time with Children”列进行排序,找出耗时比较长的方法,窗口下部的Call Graph、Editor可以比较直接的了解当前方法的执行过程,便于分析。
由于很多系统都有登录的过程,而这部分所执行的操作也会被监视器捕捉到,我们可以在第5步开始前先禁用监视,如下图:
等登录过程完成后,请求需要分析的页面时再启用监视,就可以排除掉其它过程所产生的干扰。
我们可以多次获取监视的数据,但每次通过Ctrl+R获取数据后不会清除已捕获的数据。
以上只是AQtime的初步使用,如果您有什么心得请不要忘记与大家一起分享!
3、 把第2步添加的程序集拖到创建的PLM范围下,如下图所示
4、 通过菜单“Run->Parameters”指定起始的URL地址。
5、 点击“Performance Profiler”前面的绿色的Run按钮我们就可以开始进行监视了
在弹出的Run Settings窗口中,选择Thread Model为CLR Threads,Active counter为Elapsed Time,点击“Run”按钮,并确认重启IIS。
6、 AQtime会新打开或选用已打开的IE访问第4步所设置的URL,等想分析的操作执行完后,就可以通过Ctrl+R快捷键获取已捕获的数据了。