你在使用。net程序时使用过哪些分析器,你特别推荐哪一个?


当前回答

别忘了很棒的scitech .net内存分析器

它可以很好地跟踪。net应用程序内存不足的原因。

其他回答

AutomatedQA AQTime计时和SciTech MemProfiler内存。

我还要补充一点,dotTrace区分内存和性能跟踪会话的能力绝对是无价的(ANTS可能也有内存差异特性,但我没有看到性能差异)。

能够在bug修复或增强之前和之后运行一个分析会话,然后比较结果是非常有价值的,特别是对于一个庞大的遗留的。net应用程序(就像我的情况),性能从来都不是优先考虑的,而且查找瓶颈可能非常乏味。执行前后差异可以查看每个方法的调用计数变化和每个方法的持续时间变化。

This is helpful not only during code changes, but also if you have an application that uses a different database, say, for each client/customer. If one customer complains of slowness, you can run a profiling session using their database and compare the results with a "fast" database to determine which operations are contributing to the slowness. Of course there are many database-side performance tools, but sometimes I really helps to see the performance metrics from the application side (since that's closer to what the user's actually seeing).

总结:dotTrace工作得很好,差异是无价的。

如果你是ASP。你可以尝试MVCMiniProfiler (http://benjii.me/2011/07/using-the-mvc-mini-profiler-with-entity-framework/)

我发现JetBrains的dotTrace Profiler是。net和他们的ASP的一个很好的分析工具。NET模式就是质量。

(完全披露)

虽然还不像这里列出的其他一些。net内存分析器那样功能齐全,但市场上有一个新的入口叫做JustTrace。它是由Telerik制作的,它的主要目标是让所有类型的应用(web/Silverlight/桌面)的跟踪/分析更容易、更快。

如果您曾经发现使用其他工具分析和优化令人生畏或速度较慢,那么JustTrace可能值得一试。