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是一种可扩展的标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言. (可扩展标记语言:可扩展标记语言是一 ...
随机推荐
- 数据库中删除语句Drop、Delete、Truncate的相同点和不同点的比较
数据库删除语句的分别介绍: Delete:用于删除表中的行(注:可以删除某一行:也可以在不删除表的情况下(即意味着表的结构.属性.索引完整)删除所有行) 语法:删除某一行:Delete From 表名 ...
- 设置MySQL最大连接数
<pre name="code" class="sql">在使用MySQL数据库的时候,经常会遇到这么一个问题,就是"Can not co ...
- Virgo标签打印
去年刚换新的公司,熟悉新的业务和代码,在修改公司打印标签的时候,感觉到无比烦躁与头痛.只因为不好维护,所有的标签打印,全部是GDI+绘制,每次修改微调,都只能全部运行才能看到效果.程序过大,编译过慢, ...
- win10 UWP 显示地图
微软自带的地图很简单 引用地图xmlns:Map="using:Windows.UI.Xaml.Controls.Maps" 写在<Page> 然后在Grid 用Map ...
- Gradle sync failed 异常
今天开发过程中出现如下异常 Gradle sync failed: Connection timed out: connect. If you are behind an HTTP proxy, pl ...
- 使用Hexo+Github一步步搭建属于自己的博客(进阶)
主题的配置:这里以NexT主题作为题材 1.安装NexT,在其文件夹中鼠标右键,点击Git Base Here.输入命令:git clone https://github.com/iissnan/he ...
- vue2.0 练习项目-外卖APP(1)
前言 vue这个框架现在挺流行的,作为一个专注前端100年的代码爱好者,学习下路径流行的框架是必须的!在网上搜索vue的项目是比较少的,在官网进行了入门学后,没有一个项目练习巩固下,学了就等于没学,所 ...
- Kafka 学习笔记-基本概念
一.基本概念 Kafka是一个分布式的,可分区的,可复制的消息系统 Kafka以由一个或多个服务以集群的方式运行,服务叫broker producer,consuer通过kafka topic发布,预 ...
- 项目总结二:模块管理之requireJS
项目开发前期,对究竟用requireJS 还是sea.js 进行讨论,最后采用requireJS,但是后期遇到了问题--当谷歌地图不能加载时,整个页面卡死的状况. requirejs 的作用: 防止j ...
- jQuery实现用户输入自动完成功能
jQuery实现用户输入自动完成功能 利用jQuery UI中Auto-complete插件实现输入自动完成功能,大家在使用诸如淘宝.京东等电商平台搜索商品时,往往只要输入商品的一些特殊字符,就可以显 ...