我有 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/