【问题标题】:Some Web Api endpoints very slow when Visual Studio debugger is on当 Visual Studio 调试器打开时,一些 Web Api 端点非常慢
【发布时间】:2020-01-24 07:42:28
【问题描述】:

当我使用 Visual Studio 调试器在 IISExpress 上运行我们的 Web Api(.NET Framework 4.6.2 项目)时,我们的一些端点真的很慢:16 秒而不是 200 毫秒,或者如示例中的 8 秒而不是 3 秒.

当我停止 Visual Studio 的调试器并且应用程序仍在后台运行在 IISExpress 上时,API 再次变得非常快。

我猜这可能是 Visual Studio 中的一个设置,但我找不到它。 我已经搜索并尝试了一些在 StackOverflow 上找到的设置,例如: - '只是我的代码',打开 - 符号缓存在文件夹中,Microsoft Symbol Servers 已关闭 - 浏览器链接已关闭

【问题讨论】:

    标签: debugging asp.net-web-api visual-studio-2019


    【解决方案1】:

    感谢您的帮助,但我已使用以下 Stackoverflow 响应解决了该问题: Why is DbContext.SaveChanges 10x slower in debug mode 正如他所说: 好的,所以调试模式异常缓慢的原因是因为 Visual Studio 的 Intellitrace 正在记录 Entity Framework 生成的每个 ADO.NET 事件(全部 20、000 个)。

    So Tools-> Options -> IntelliTrace 并取消选中“Enable IntelliTrace”修复了该问题。

    或者也可以通过转到 Tools->Options -> IntelliTrace -> IntelliTrace Events 并取消选中 ADO.NET 来过滤掉 ADO.NET 事件

    【讨论】:

      【解决方案2】:

      当 Visual Studio 调试器打开时,一些 Web Api 端点非常慢

      此外,我认为您可以尝试以下步骤:

      1)取消选中Tools->Options->Debugging->General中的Enable Diagnostic Tools while debugging选项

      2) 请确保您已禁用 Enable JavaScript debugging for ASP.NET Tools->Options->Debugging->General

      另外,如果您使用的是 VS 2019 企业版,请尝试禁用 IntelliTrace 功能(Tools -> Options -> IntelliTrace

      更多信息可以参考this link

      【讨论】:

        猜你喜欢
        • 2012-09-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-13
        • 1970-01-01
        • 1970-01-01
        • 2012-10-08
        相关资源
        最近更新 更多