gpt4 book ai didi

asp.net - 分析 ASP.NET Web 应用程序的 CPU 使用率 - 但不是数据库!

转载 作者:行者123 更新时间:2023-12-01 02:59:59 25 4
gpt4 key购买 nike

我看到我的 ASP.NET Web 应用程序的 CPU 使用率一直很高(仅在实时生产盒上,自然......!)我试图缩小原因 - 它基本上是最大化四核至强盒它不可能做到这一点!

Web 进程的 CPU 使用率通常高于 DB 进程的 CPU 使用率 - 这本身就给我敲响了警钟(?)。

但是,使用标准分析工具(dotTrace、Red Gate 等)只会向您显示在单个方法上花费的时间(而不是实际的 CPU 使用率)——最终仍然突出显示受 DB 限制的方法。虽然这可能表明缓存或更好的索引的机会,但我不明白这本身会如何导致 Web 应用程序进程的高 CPU 使用率?

关于如何缩小范围的任何建议或提示?

谢谢!

最佳答案

一些建议首先尝试。

1.使用发布版本进行部署
检查部署的产品是否处于 Release模式。通过在 Debug模式下运行,加载 pdbs 和程序集会浪费大量时间。

2.禁用 View 状态
如果不需要,请禁用 View 状态。 ViewState 只不过是存储在隐藏字段中以在请求之间持久化的数据。它在服务和请求时都会增加页面的总负载。在序列化或反序列化回发到服务器的 View 状态数据时,还会产生额外的开销。最后, View 状态会增加服务器上的内存分配。

3.禁用 session 状态:

如果您不打算使用它,请禁用 session 状态。默认情况下它是打开的。您实际上可以为特定页面或整个应用程序关闭此功能。

有一些基本的 ASP.NET 应用程序性能监控,查看这两篇 MSDN 文章
"Monitoring ASP.NET Application Performance"Performance Counters for ASP.NET

关于asp.net - 分析 ASP.NET Web 应用程序的 CPU 使用率 - 但不是数据库!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1126434/

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