彩票走势图

ANTS性能分析器ANTS Performance Profiler教程:6个.NET性能建议的技巧

翻译|使用教程|编辑:莫成敏|2019-12-27 13:57:12.510|阅读 902 次

概述:本文介绍了6个关于.NET性能建议的技巧,现在就来了解一下吧~

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

ANTS Performance Profiler是一种用于分析.NET框架支持的以任何语言编写的应用程序的工具。ANTS性能分析器能分析所有.NET应用程序,包括ASP.NET网络应用程序、Windows服务和COM+应用程序。ANTS性能分析器能在几分钟内识别性能瓶颈,运行非常快速,且响应时,对程序的执行具有最低影响。

ANTS性能分析器可用作一种独立工具,也可用作Red Gate .NET Developer Bundle的一部分。本文介绍了6个关于.NET性能建议的技巧,现在就来了解一下吧~

点击下载ANTS Performance Profiler正式版


技巧1:如果必须在代码中测量较小的时间差异,请确保使用StopWatch类

DateTime.UtcNow不是为高精度计时而设计的,并且通常具有超过10ms的分辨率,使其不适合测量小时间段。 StopWatch类是为此目的而设计的,尽管要当心使用StopWatch工具结束整个代码库。

技巧2:充分利用所有瓶颈来提高.NET性能

虽然Async-Await习惯运作良好,但是架构模式可以切换到更高的档位。处理多个小型作业时,请考虑将作业部分拆分为特定于资源的块。然后为每个资源创建单独的线程,并在两者之间放置内存缓冲区。目标是在任何给定的计算机上充分利用任何资源作为.NET性能的瓶颈。

例如,在下图中,应用程序包含四个步骤。

ANTS性能分析器ANTS Performance Profiler教程:6个.NET性能建议的技巧

它首先从磁盘读取文件,对其进行一些处理,将结果存储在数据库中,最后删除该文件。每个红色框是一个单独的线程,每个垂直的“泳道”代表一个特定的资源。该过程从上到下流动,并使用队列作为每个资源交换机之间的缓冲区。

技巧3:使用防御性编码技术,例如在可行的情况下执行空检查,以避免在运行时出现NullReferenceExceptions

异常可能很慢,应只在特殊情况下使用,而不是用于一般控制流程。与其假设一个对象在运行时不会为空,而是使用防御性编码以确保您的代码仅作用于非空的对象。这将通过引发更少的异常来帮助.NET性能,并确保更健壮和可靠的应用程序。

技巧4:假定.NET性能问题是您的错,除非您有相反的证据

当出现.NET性能问题时,很容易将责任归咎于系统代码、第三方库,甚至.NET框架本身。但是,在几乎所有情况下,您的应用程序都在滥用他人的代码,因此在责怪其他人之前,请确保您有确凿的证据证明问题出在其他地方。

技巧5:预先准备.NET性能优化项目

好的.NET性能优化项目需要在四个关键领域进行适当的准备。

  • 创建一个测试环境,您可以在其中再现一致的.NET性能行为。理想情况下,如果您多次运行该工具,则希望它显示出相同的.NET性能。没有这样的测试环境,不要开始优化。

  • 在进行任何更改以用作基准之前,请测量.NET性能KPI。更改代码后,将性能与基准进行比较。如果更改使代码更快,那么新的测试结果就是您的新基准。如果不是,请撤消更改并继续使用.NET Profiler工具(如ANTS Performance Profiler)进行分析。

  • 不要同时改变太多。进行小的更改,进行度量,然后决定是否要保留更改。如果进行多项更改,那么一项更改可以使您的代码更快,而另一项更改可能会破坏积极的效果。

  • 永远不要猜,测量!获取一个像ANTS这样的.NET探查器工具,并使用它来发现.NET性能瓶颈。在许多情况下,性能杀手是您意想不到的。避免仅仅因为感觉性能不好而优化代码。

技巧6:在优化代码之前,先对应用程序进行分析,以便了解瓶颈在哪里

这是很多地方都在说的话,但我想再说一遍,因为它是如此重要。即使使用Visual Studio中有限的.NET分析器工具来分析应用程序中的性能问题也将有所帮助。借助ANTS Performance Profiler等专业的.NET Profiler工具,您将发现有关瓶颈的更多信息,并且能够更快地执行更多操作。

本教程内容到这里就结束了,希望对您有所帮助~您可以下载ANTS Performance Profiler试用版免费评估~


想要购买产品正版授权,或了解更多产品信息请点击

850×0.png


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn

文章转载自:

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP