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是一种可扩展的标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言. (可扩展标记语言:可扩展标记语言是一 ...
随机推荐
- c# Linq操作XML,查找节点数据
/*查找XML*/ var filePath = Server.MapPath("~/xml/sample.xml"); XDocument doc = XDocument.Loa ...
- ReactiveCocoa_v2.5 源码解析之架构总览
ReactiveCocoa 是一个 iOS 中的函数式响应式编程框架,它受 Functional Reactive Programming 的启发,是 Justin Spahr-Summers 和 J ...
- Pyhton编程(二)之变量、用户输入及条件语句
一:变量 变量定义的规则 1)只能由数字.字母.下划线组成(不能以数字开头) 2)不能使用关键字作为变量名 ['and', 'as', 'assert', 'break', 'class', 'con ...
- 转:stringstream的用法
[本文来自]http://www.builder.com.cn/2003/0304/83250.shtmlhttp://www.cppblog.com/alantop/archive/2007/07/ ...
- 查找算法(I) 顺序查找 二分查找 索引查找
查找 本文为查找算法的第一部分内容,包括了基本概念,顺序查找.二分查找和索引查找.关于散列表和B树查找的内容,待有空更新吧. 基本概念 查找(search)又称检索,在计算机上对数据表进行查找,就是根 ...
- JAVA提高七:类加载器
今天我们学习类加载器,关于类加载器其实和JVM有很大关系,在这里这篇文章只是简单的介绍下类加载器,后面学习到JVM的时候还会详细讲到类加载器,本文分为下面几个小节讲解: 一.认识类加载器 1.什么是类 ...
- Linux入门(2)——Ubuntu16.04安装wineQQ
http://www.ubuntukylin.com/application/show.php?lang=cn&id=279 下载得到wine-qqintl.zip 解压得到wine-qqin ...
- Servlet 笔记-过滤器
Servlet 过滤器可以动态地拦截请求和响应,以变换或使用包含在请求或响应中的信息. 可以将一个或多个 Servlet 过滤器附加到一个 Servlet 或一组 Servlet.Servlet 过滤 ...
- 在webapi中为Action使用dynamic参数实现Post方式调用
1.在webapi中使用controller/action/id的路径配置,打开文件[App_Start] -[WebApiConfig] config.Routes.MapHttpRoute( na ...
- Establish the LAMP (Linux+Apache+MySQL+PHP) Development Environment on Ubuntu 14.04 Operating System
######################################################## Step One: Update the software package in yo ...