gpt4 book ai didi

asp.net - 如何使用 Visual Studio 2017 分析 ASP.NET IIS Web 应用程序的性能?

转载 作者:行者123 更新时间:2023-12-02 16:41:34 24 4
gpt4 key购买 nike

我有一个 ASP.NET Web 应用程序,某些操作在服务器上成熟的 IIS 8.5 中执行速度比在 Visual Studio 的 IIS Express 中慢 6 倍。

如果我尝试附加只是为了调试,我会正确地看到 w3wp.exe: enter image description here

我在 Profiler 的附加对话框中看不到 w3wp.exeenter image description here

我正在以管理员权限运行 VS 2017。这不是远程调试方案,成熟的 IIS 和调试工具都位于同一服务器上(Windows Server 2012 R2 Essentials,如果重要的话)。我使用的是 Visual Studio 2017 社区版。

如何在 IIS 中调试我的应用程序,以便找出它速度慢 6 倍的原因?这让我很惊讶,因为通常情况恰恰相反:调试和配置文件版本比发布版本慢得多。

顺便说一句,我们的服务器内存非常有限。有两个开发人员同时工作,16GB 物理内存(遗憾的是不可升级)很容易就满了。所以我猜常规 IIS 受到所有开发工具、SQL Server 等的内存挤压。这可能是速度缓慢的原因,但我不想玩猜谜游戏,我想查看配置文件 session 。顺便说一句,分析 VS 的 IIS Express 非常简单。如果我没看错的话,Visual Studio 2015 甚至没有提供正在运行的进程的分析。

<小时/>

Rob 非常简洁。首先,您需要以管理员模式启动 Visual Studio。除了在开始时选择 ASP.NET 作为分析目标之外,一旦第 2 页上出现分析向导,您必须再次选择“ASP.NET 应用程序”而不是可用的项目,否则 Visual Studio 只会启动服务器。之后,在第 3 页(共 4 页)中,我指定了由本地(非开发人员)IIS 服务器运行的应用程序的 Web URL ( http://localhost:8000 )。如果你还没有这样做,你必须在管理模式下重新启动 VS。如果 VS 启动了另一台服务器,那么性能输出看起来就像:

Preparing web server for profiling.
Profiling started.
Launching web server with profiling.
Profiling process ID 872 (w3wp).
Starting data collection. The output file is C:\Users\Csaba\Documents\MyProjectSrc\http_localhost_8000__170924.vspx
Profiling process ID 8416 (iexplore).
Attaching to process 8416.
Profiler stopping.
Stopping data collection.
Merging collection data. Please wait...
Data is saved in file C:\Users\Csaba\Documents\MyProjectSrc\http_localhost_8000__170924.vspx
Profiling finished.

数据收集后,我在事件日志中看到一些虚假错误,表明收集不会成功。看起来它能够从第三方库收集数据。但我不能保证它100%合法,因为我这次没有彻底检查它。

最佳答案

选择分析目标时选择“ASP.NET”而不是“正在运行的进程...”。

关于asp.net - 如何使用 Visual Studio 2017 分析 ASP.NET IIS Web 应用程序的性能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43336167/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com