在 IIS 服务器上分析 Web 应用程序
通常,当 Web 应用程序已经在服务器上运行时,需要确定其性能问题。 下表总结了分析应用程序的所有可能选项:
优点 | 功能 | |
|---|---|---|
|
| |
|
|
本地分析

通常,当需要分析托管在您(开发者)机器上或某些不施加任何安全/性能限制的测试环境中的应用程序时,会使用本地分析。
在 IIS 服务器上托管的 Web 应用程序进行本地分析
在服务器上安装 dotTrace。
以管理员身份运行 dotTrace 作为独立应用程序。 dotTrace 主页 窗口将会打开。
添加运行配置 - 该配置告诉 dotTrace 如何运行被分析的应用程序:
在 选择您想要分析的内容、 新进程运行 下,点击
添加运行配置。在 新建运行配置 向导中,选择 IIS 并点击 下一步。
在 打开 URL 中,指定被分析应用程序的 URL。 如果您不这样做,dotTrace 将开始分析它能够找到的第一个正在运行的应用程序池。
可选地,在 在浏览器中 中,指定 dotTrace 应该使用的浏览器以打开 URL。
可选地,在 设置环境变量 中,指定所需的环境变量。 每个变量必须在新行中指定。
点击 保存。
确保在 新进程运行 列表中选择了创建的运行配置。
在 选择您要如何分析 下,指定分析选项:
分析类型 :通常,您需要在 采样 (评估性能并确定应用程序中最慢的方法)和 时间线 (与采样相同,但包含额外的时间线数据)之间进行选择。 了解更多关于分析类型的信息
如有需要,请指定 其他分析选项。
如果您希望 dotTrace 在会话开始后立即开始收集分析数据,请在 运行分析 下选择 从开始处收集分析数据。
点击 启动。 这将启动分析会话。
在您的应用程序中执行特定的工作流(如果您想评估其性能)或重现特定的性能问题。 使用分析控制器窗口中的 获取快照 按钮收集快照。 了解更多关于如何控制分析会话的信息
收集数据后,关闭被分析的应用程序或使用控制器窗口中的 分离 按钮分离分析器。
使用 dotTrace Viewer 分析收集的快照。
通过命令行分析器进行分析

如果您需要自动化分析,例如定期分析您的应用程序,命令行分析器是最佳选择。 另一种可能的情况是,您无法访问服务器,但其他人可以访问,因此您可以向他们提供分析工具和批处理文件。
它是如何工作的? 简而言之,您将命令行分析器复制到服务器,并在分析下运行应用程序(应用程序池将重新启动)或将工具附加到正在运行的应用程序池 w3wp.exe 。
使用命令行分析器分析 IIS 服务器上的 Web 应用程序
下载包含 dotTrace.exe 工具的 zip 压缩包 ,并将其复制/解压到服务器。
现在,您应该开始分析托管您的应用程序的应用程序池:您可以附加到已经运行的应用程序池,或者在分析下启动一个新的应用程序池。 启动新的应用程序池并没有比附加更大的优势,因此我们只讨论后者(您仍然可以在《使用 dotTrace 命令行分析器》中找到所有详细信息)。
将 dotTrace.exe 附加到正在运行的应用程序池:
dotTrace.exe attach 1234 --save-to=snapshot.dtp其中
1234是对应 w3wp.exe 进程的进程 ID。在获取性能快照时,您有两种选择:
按超时获取快照:
dotTrace.exe attach 1234 --save-to=snapshot.dtp --timeout=5m此处将在 5 分钟后获取快照,然后分析器将从进程中分离。

在进程退出时获取快照。 dotTrace.exe 工具将在被分析的应用程序成功完成其工作后获取快照(因此,如果应用程序被“终止”,将不会收集快照)。 为实现此目的,您可以,例如,在 IIS 管理器中 回收 对应的应用程序池。

将生成的快照复制到安装了 dotTrace 的计算机,并在 dotTrace Viewer 中分析它。
请注意,快照包含大量本机代码是正常现象。