Asp.net mvc 3 MVC3虚拟目录视图文件夹速度非常慢
我有一个MVC3应用程序,它通常使用视图和控制器 我还有一个控制器Asp.net mvc 3 MVC3虚拟目录视图文件夹速度非常慢,asp.net-mvc-3,visual-studio-2010,iis-7.5,Asp.net Mvc 3,Visual Studio 2010,Iis 7.5,我有一个MVC3应用程序,它通常使用视图和控制器 我还有一个控制器TestController,它从IIS 7.5中的虚拟目录设置返回视图 在视图下的IIS中,我添加了虚拟目录Test,它指向本地磁盘上的一个目录以及cshtml页面 第一次请求时,视图的渲染最多需要20分钟,但后续请求需要几秒钟 我的本地计算机上的实际文件夹包含1000个cshtml页面-这会是一个问题吗 为什么我的应用程序需要20分钟(第一次请求)才能从虚拟目录渲染视图,而在解决方案本身中渲染视图需要几秒钟 非常感谢您的帮助
TestController
,它从IIS 7.5中的虚拟目录设置返回视图
在视图下的IIS中,我添加了虚拟目录Test
,它指向本地磁盘上的一个目录以及cshtml页面
第一次请求时,视图的渲染最多需要20分钟,但后续请求需要几秒钟
我的本地计算机上的实际文件夹包含1000个cshtml页面-这会是一个问题吗
为什么我的应用程序需要20分钟(第一次请求)才能从虚拟目录渲染视图,而在解决方案本身中渲染视图需要几秒钟
非常感谢您的帮助
[进一步更新]-这种情况发生了很多次,然后就停止了。然后,我不得不删除虚拟目录并将其重新添加到IIS中,然后它又开始发生了。
我决定运行ants性能分析器。这就是结果(我等了将近30分钟才停下来)
我有一种感觉,我们可能会看到死锁,但我不知道如何测试它。在创建自己的虚拟路径提供程序后,我发现一旦从虚拟目录请求了一个文件,它就会遍历目录中的每个文件,并对每个文件调用GetCacheDependency 我相信Pranav上面的解释是正确的,因此答案是正确的,但下面是我采取的方法:
我不知道这个问题是否与IIS有关,但是数千个cshtml页面听起来太多了。他们的目的是什么?这是一个如此大的网站吗?可能是误用了模板引擎?谢谢你的突破。