ANTS Performance Profiler 8:支持对Web请求、异步代码和WinRT的性能剖析

Web请求剖析使开发者能够捕获向外的HTTP请求,其中包括请求和响应的头信息。最新的版本还能剖析用C#或VB编写的Windows商店应用。此外,如果使用JavaScript、HTML5和C++,也能监控托管代码的状态。
最新的beta版以这样的方式进行了更新,可以更快速地启动剖析会话,用户也得以快速获得结果。而且开发者能够使用任何浏览器来剖析IIS、IIS Express和Web Dev Server上的ASP.NET网站。
InfoQ采访了Red Gate Software公司.NET工具部门的产品营销经理Ben Emmett,希望了解ANTS Performance Profiler 8 Beta的更多信息。
InfoQ:ANTS Performance Profiler用于什么用途?
ANTS Performance Profiler能够显示出性能瓶颈,让开发者理解并改进.NET应用程序的性能。它设计用于开发过程的任何阶段,既能作为例行检查的一部分来保证可接受的性能,也能用于发现活跃代码中急需解决的性能问题。
InfoQ:ANTS Performance Profiler与其他竞争产品有何不同?
最难解决的性能问题往往不孤立存在于应用程序的某一部分,相反它是系统不同部分相互作用的结果。ANTS Performance Profiler是唯一能够显示代码相关数据存取请求(数据库、HTTP和文件I/O)的.NET工具。利用该工具,可以简单地跟踪过多的请求,或者过多的长请求,并返回到导致这些请求的源代码。这对理解与ORM有关的性能问题特别有用,而且它提供了一定程度的理解,否则需要使用4个独立工具。
ANTS Performance Profiler对获得结果的速度也有严格要求。用户告诉了我们诊断性能问题时的最关键信息,因此为了更简单地表现这些信息,我们在新版本中重构了大部分接口。最糟糕的是,性能剖析就像打开一层套一层的放虫子的盒子那么麻烦,但不管潜在问题是简单还是复杂,ANTS Performance Profiler都能给出清晰、有意义的结果。
InfoQ:如果使用了ANTS Performance Profiler 8,应用程序就会有性能改进吗?
大多数用户都得到了重大性能改进,我们经常听到用户说他们的代码速度提升了几个数量级。当然,精确的获益情况依赖于应用,但要找到一点好处都没得到的软件可是相当困难的。
InfoQ:剖析Windows商店应用有何必要性?
速度对任何应用程序都很重要,尤其对Windows 商店应用而言,快速响应的UI非常重要,而且低效的应用会非常耗电。
因此,微软对Windows商店应用有严格的性能要求,不满足性能要求很可能会被Windows商店拒绝。包括限制应用后台使用处理器的时间(每2个小时只能使用1秒CPU时间),应用启动时间限制为5秒,还会杀掉任何阻塞UI线程超出50毫秒的应用。
要避免与这些限制产生冲突,唯一的方式就是理解应用的性能,而剖析又是理解应用性能的最佳手段。
InfoQ:剖析Web请求和异步代码有什么好处?
C#5中的Async/Await关键字简化了异步代码的编写,但理解代码在背后是如何运行的实际仍很困难。其他剖析器只显示CLR在后台为异步方法创建的底层状态机。我们很难把异步方法中完成的工作和引起它运行的方法关联起来。ANTS Performance Profiler可以给出与编写的代码直接相关的结果,而非强迫用户理解Async背后的实现。
Web请求剖析能够显示出应用程序是如何与其他Web服务器交互的。开发者可以快速识别出长期运行的、重复的或失败的请求,也可以看到关于这些请求的本质的信息。数据存取是导致性能瓶颈的常见且越来越严重的原因,我们的工具更大 的策略就是向开发者展示他们所需要知道的关于数据存取的一切信息,Web请求剖析也是该策略的一部分。
InfoQ:能否在Visual Studio 2012中使用ANTS Performance Profiler?
ANTS Performance Profiler是独立的工具。丰富的UI——特别是性能时间线——意味着它不适合在Visual Studio内运行,但大部分开发者喜欢更多的功能。所以我们提供了一个VS扩展,可以基于Visual Studio内的项目设置自动配置并启动剖析会话。
InfoQ:你能否透露一下ANTS Performance Profiler未来的路线图?
我们打算三月份发布第8版。之后我们会继续努力,并特别改进对Web开发者的支持。我们也会对它的姐妹工具ANTS Memory Profiler做出一些大的改进。
查看英文原文:ANTS Performance Profiler 8: Web request, Async code, WinRT
ANTS Performance Profiler 8:支持对Web请求、异步代码和WinRT的性能剖析的更多相关文章
- [转]ANTS Performance Profiler和ANTS Memory Profiler 使用
.NET性能调优之一:ANTS Performance Profiler的使用 .NET性能调优系列文章 系列文章索引 .NET性能调优之一:ANTS Performance Profiler的使 ...
- .NET性能调优之一:ANTS Performance Profiler的使用
.NET性能调优系列文章 系列文章索引 .NET性能调优之一:ANTS Performance Profiler的使用 .NET性能调优之二:使用Visual Studio进行代码度量 .NET性能调 ...
- 使用ANTS Performance Profiler&ANTS Memory Profiler工具分析IIS进程内存和CPU占用过高问题
一.前言 最近一段时间,网站经常出现两个问题: 1.内存占用率一点点增高,直到将服务器内存占满. 2.访问某个页面时,页面响应过慢,CPU居高不下. 初步判断内存一点点增多可能是因为有未释放的资源一直 ...
- ANTS Performance Profiler和ANTS Memory Profiler
使用ANTS Performance Profiler&ANTS Memory Profiler工具分析IIS进程内存和CPU占用过高问题 一.前言 最近一段时间,网站经常出现两个问题: ...
- WPF性能调试系列 – Ants Performance Profiler
WPF性能调试系列文章: WPF页面渲染优化:Application Timeline WPF页面业务加载优化:Ants Performance Profiler WPF内存优化:Ants Memor ...
- ANTS Performance Profiler 破解使用
http://blog.csdn.net/wangjia184/article/details/7746089
- .NET开发辅助工具-ANTS Performance Profiler【转载】
https://blog.csdn.net/Eye_cng/article/details/50274109
- MVC+MEF+UnitOfWork+EF架构,网站速度慢的原因总结!(附加ANTS Memory Profiler简单用法)
(最近使用内存分析工具ANTS Memory Profiler,以及其他网友提供的意见发现最终导致内存泄漏的就是MEF,在此特地更新下,与大家分享!最下面红色字体) 最近参考使用了郭明峰的一套架构来做 ...
- JAVA EE 第二周(XML简述以及web请求的过程)
一. 对于XML,我分别从以下几个方面来简述: 1.定义: XML是一种可扩展的标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言. (可扩展标记语言:可扩展标记语言是一 ...
随机推荐
- ASP.NET MVC AJAX的调用示例
@{ ViewBag.Title = "Home Page"; //下面引用Jquery和unobtrusive-ajax } @Scripts.Render("~/bu ...
- ionic构建APP--简单操作实现APP制作
ionic--基于AngularJS的app框架 1安装ionic .HBuilder创建APP项目,导入ionic的css,js(fonts)文件. .导入ionic.css和ionic.bundl ...
- JavaScript设计模式--门面模式
外部与一个子系统的通信必须通过一个系统的一个门面对象进行,这就是门面模式. 门面模式具备如下两个角色: 1. 门面角色 客户端可以调用这个角色方法,此角色中有子系统的应用(知晓相关的(一个或多个)子系 ...
- 我的第一个python web开发框架(10)——工具函数包说明(一)
PS:原先是想直接进入功能开发,要用到什么函数时再创建,这样也容易熟悉每个函数的由来和使用方法,但考虑到这样操作,到时会经常在不同文件间切换,不好描述,容易造成混乱,所以还是使用函数库这种方式来说明. ...
- 使用EF操作Mysql数据库中文变问号的解决方案
问题场景:使用Entity Framework 6.0 操作Mysql数据库,中文保存至数据库后全部变成问号.但是使用Mysql API却不会. 原因排查:首先想到的肯定是数据库编码问题,一次查询了表 ...
- Memcached查找命令
Memcached各个查找命令的语法格式都类似,且有相同的参数和参数含义,先将可能出现的各个参数的意义说明如下 key:键值 key-value 结构中的 key,用于查找缓存值. noreply(可 ...
- phalcon——访问控制列表ACL
一个完整的使用实例(将acl封装成一个插件使用): use Phalcon\Acl; use Phalcon\Acl\Role; use Phalcon\Acl\Resource; use Phalc ...
- Vim - 常用配置
基本配置 不用任何插件的情况下,先按如下配置: set nu syntax on set hlsearch set tabstop=4 set shiftwidth=4 set expandtab s ...
- spark的sparkUI如何解读?
spark的sparkUI如何解读? 以spark2.1.4来做例子 Job - schedule mode 进入之后默认是进入spark job 页面 这个说明有很详细的解释,spark有两种操作算 ...
- web前端工程师全套教程免费分享
这是我自己早前听课时整理的前端全套知识点,适用于初学者,也可以适用于中级的程序员,你们可以下载下来.我自认为还是比较系统全面的,可以抵得上市场上90%的学习资料.讨厌那些随便乱写的资料还有拿出来卖钱的 ...