当前位置:首页 - 产品中心 - 开发工具

产品名称:dotTrace

生产厂商:JetBrains产品类别:开发工具


优化.NET应用程序

dotTrace可以帮助您检测各种.NET和 .NET Core 应用程序的性能瓶颈:WPF与通用Windows平台、ASP.NET、Windows服务、WCF服务和单元测试。还支持Mono和Unity应用程序。

分析任何性能问题

获取调用执行时间的准确数据。在Timeline分析模式中,获取相同的调用时间数据,但绑定到时间线。使用时间线数据来分析事件顺序至关重要的性能问题,例如,UI死机、过度垃圾回收、工作负载分布不平衡、低效的文件I/O等。

分析SQL查询和 HTTP请求

发现特定查询如何影响应用程序性能,以及此查询运行缓慢的原因。

如果您开发Web应用程序,了解它如何处理传入HTTP请求。

分析静态方法和单元测试

您可以立即获取全面的分析数据,无需生成解决方案,运行分析器并执行使用场景。只需添加一个静态方法和要优化的代码,即可分析!

如果您在项目中使用单元测试,dotTrace可以帮助您只需几下点击即可分析任何测试。此外,dotTrace还提供了专门的TeamCity插件,您可以使用此插件在CI服务器上分析集成测试,并防止性能下降。

直接在Visual Studio中分析结果

借助dotTrace,无需离开IDE即可查看性能时间线,分析调用堆栈以及执行更多分析操作。

您甚至可以从调用树中的热点导航到方法声明!


属于RESHARPER ULTIMATE

ReSharper Ultimate:一个许可证包含一套.NET工具和ReSharper C++

ReSharper Ultimate是一种包含各个JetBrains .NET工具和ReSharper C++的许可证。

每个ReSharper Ultimate许可证允许一名开发者使用ReSharper、ReSharper C++、dotCover、dotTrace和dotMemory。


dotTrace功能

dotTrace是一款 .NET应用程序性能分析器,可以直接在 VisualStudio/JetBrainsRider 中运行,并提供检测和分析性能瓶颈的出色方式。阅读以获得更多详细信息。

分析所有类型的.NET应用程序

dotTrace可以帮助您分析各种.NET应用程序的性能瓶颈,包括桌面应用程序、.NET Core、托管在IIS或IIS Express web服务器上的ASP.NET应用程序、Mono与Unity应用程序、WCF服务、Windows服务、通用Windows平台应用程序和单元测试。

在Windows、macOS和Linux上运行

dotTrace支持针对.NET Framework1.0-4.7、.NET Core1.0-3.0、Mono 5.10或更高版本以及Unity2018.3或更高版本的项目。在macOS和Linux上,dotTrace只能作为 JetBrains Rider 的一部分或命令行分析器使用。

Timeline和更多分析模式

不同于“经典的”性能分析只衡量调用执行时间,Timeline 分析可以揭示调用的时间分布。

通过将方法调用数据绑定到时间线,此分析模式远不止仅检测最慢的方法:它可以诊断事件顺序至关重要的性能问题,例如,UI死机、过度垃圾回收、工作负载分布不平衡、低效的文件I/O等。

不过,dotTrace仍可使用传统的分析模式。 Sampling 分析是评估应用程序整体性能的最简单方法,而 Tracing 和 Line-by-line 分析模式则非常适用于需要详细了解特定算法内部运行效果的情况。

全新的分析体验

您可以使用筛选器、调用树或图表划分分析数据。通过应用筛选器,您可以获得由特定条件选择的一组时间间隔。其运作方式非常类似于在数据库上执行查询来获得恰好需要的数据。

例如,要查找是否因阻塞垃圾回收导致UI死机,您可以要求dotTrace 在主线程上选择发生UI死机且执行了阻塞垃圾回收的所有时间间隔。虽然听起来很复杂,但实际上只需点击两下即可切换这个筛选器组合。

Visual Studio/Rider深度集成

dotTrace与VisualStudio/JetBrains Rider深度集成,帮助您无需离开IDE即可开始分析当前开发的应用程序。您现在甚至可以直接在IDE中查看和分析Timeline分析结果。在调用树中发现了热点调用?立即导航到方法声明!

Visual Studio/JetBrains Rider集成使分析体验几乎无缝,因为您不再需要在IDE和分析器之间切换。

分析异步调用

dotTrace使您可以轻松分析异步代码:async 调用的所有“部分”都在一个地方显示,因此您不必在不同的调用堆栈中搜索它们。

分析静态方法

dotTrace使您可以即时分析代码中的任何静态方法。只需将脱字符号放在方法上,按 Alt+Enter,并从操作列表中选择 Debug | Profile。

试想一下这个功能可以做什么。您可以在编写完代码后就地分析代码的任何部分!无需生成解决方案,在分析器中运行,执行运行新代码的用法场景,等等。

分析远程应用程序

大多数情况下,您需要分析本地运行的应用程序。但如果您面临远程web服务器上的滞后应用程序呢?

dotTrace可以连接到远程计算机来分析独立或web应用程序,或Windows服务。您甚至无需在远程计算机上安装dotTrace:只需复制几个文件即可。

连接到运行中的应用程序

dotTrace可以连接到运行中的应用程序来执行分析,并在捕获分析数据后立即分离。

这样就最大程度地减少了在分析器下运行应用程序带来的开销。更重要的是,如果您无法承受每次需要分析就重启应用程序,它可以在生产环境中调查性能问题。

分析单元测试

如果您有VisualStudio + ReSharper*捆绑包或JetBrains Rider**,可以从代码编辑器或单元测试运行程序轻松地开始分析单元测试。

*即使没安装ReSharper,您仍然可以分析NUnit、MSTest或xUnit提供的原生单元测试运行程序。

**只有“ReSharperUltimate + Rider”或“AllProducts Pack”许可证的所有者可以使用分析功能。

分析缓慢的HTTP请求

分析Timeline分析快照时,您可以筛选web应用程序处理传入HTTP请求的时间间隔。获得确切的数据,确定确切的根本原因,并将运行缓慢的方法调整归零。通过Timeline分析加快web应用程序。

分析缓慢的SQL查询

使用Timeline分析了解每条查询如何影响应用程序性能。 SQL Queries 筛选器可以显示所有SQL查询和SQL连接及其性能统计数据。

为方便起见,可以在单独的窗口中打开查询内容,进行深入分析。您仍可以通过选择一条或多条查询来筛选所有数据,并调查执行它们的方法。

再也没有低效的SQL查询!

Profiling SDK

Profiling SDK 使您可以直接从代码中控制分析会话:以编程方式开始和停止收集分析数据,保存收集的快照,等等。

这样可以实现两个有价值的使用场景。首先,您可以使用SDK来缩小分析范围,并选择分析哪部分代码。第二个使用场景是自分析应用程序:您可以收集统计数据,显示您的应用程序在终端用户计算机上的行为。

持续集成支持

dotTrace附带命令行分析工具,可用于自动收集分析快照,如果您希望分析成为您的持续集成生成的一部分,此快照将非常有用。

如果您将JetBrains TeamCity用作CI服务器,请确保将dotTrace插件安装到TeamCity。该插件通过分析集成测试帮助您防止应用程序性能退化。您只需设置测试执行时间的阈值,如果超过阈值,该插件将自动抓取性能快照并让测试失败。

估计性能增益

有时,花数小时优化一个费时间的函数后,开发者必须从头开始分析以查看优化是否真的有效。

这对dotTrace而言不成问题。性能分析器可以根据您设置的时间调整,立即重新计算快照中的所有函数时间,无需重新分析您的应用程序。就像询问分析器:“如果我将此函数优化40%怎么样?”只需为某个函数或特定类中的所有函数指定新时间。将重新计算整个快照的时间值。

比较快照

dotTrace可以比较同一应用程序的任意两个性能快照。它会生成比较快照,其中将显示每个函数的调用次数和消耗时间的差异。可以像普通性能快照一样查看和分析比较快照。




全国服务热线:
021-52550099