asp.net-mvc-3 - ASP.NET MVC 在寻找瓶颈中迷失

标签 asp.net-mvc-3 performance debugging profiling

我有 ASP.NET MVC 应用程序,它接受文件上传并使用 SignalR 进行结果池。该应用程序托管在具有 IIS7、4 Gb RAM 和两核 CPU 的 Prod 服务器上。

开发服务器上的应用程序运行良好,但是当我将其托管在生产服务器上并拥有大约每天 50 000 个用户时,该应用程序在运行五分钟后变得不负责任。网页请求时间急剧增加,加载一页需要30秒左右。我尝试记录所有 MvcApplication.Application_BeginRequest 事件调用,并在 5 分钟 内获得了 9000 次点击。不确定这个点击次数对于这样的应用程序是否可接受。

我已经使用 ANTS Performance Profiler(在 Prod 应用程序分析中没有用,速度慢并且占用所有内存)来分析代码,但分析器在我的代码/MSSQL 查询中没有显示任何时间延迟问题。

我还尝试监控 CPU 和 RAM 峰值问题,但没有发现任何问题。 CPU 百分比有时会达到 15%,但永远不会上升,内存使用情况也正常。

我怀疑 ASP.NET/IIS7 中的请求或线程限制有问题,但不知道如何分析它。

有人可以建议任何在这种情况下有帮助的分析解决方案吗?尝试寻找这个问题两周了,但没有任何结果:(

最佳答案

您可以尝试使用 MiniProfiler更具体地说是MiniProfiler.MVC3 NuGet 包是专门为 ASP.NET MVC 应用程序创建的。它将向您显示各种有用的信息,例如执行请求时不同方法所花费的时间。

关于asp.net-mvc-3 - ASP.NET MVC 在寻找瓶颈中迷失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12897336/

相关文章:

asp.net-mvc - 想要了解MVC中ActionResult的概念。

sql-server - 为什么在 SQL Server 中的索引列上执行 top(1) 速度很慢?

ios - 如何防止调试器栏出现在 Xcode 7 中?

asp.net - 在Asp.Net MVC中的路由中使用路由名称

asp.net-mvc - 在 MVC 中,一个 Edit HttpPost 正在工作,另一个则不工作。我缺少什么?

performance - PostgreSQL 统计问题 - 无法重命名临时统计文件

debugging - 关于 ECLIM 的简短 HOW TO

c# - 如何查看 Mono 应用程序的调试消息?

asp.net-mvc-3 - 什么是 Shibboleth 服务提供商,我可以并且应该为 Windows Azure MVC3 Web 角色安装它吗?

matlab - 是否有类似 "ismember"但效率更高的功能?