.NET站点/应用程序在一段时间内未被访问时加载缓慢。是编译吗?还是由于IIS中的空闲超时设置?

.NET站点/应用程序在一段时间内未被访问时加载缓慢。是编译吗?还是由于IIS中的空闲超时设置?,.net,iis-7,precompiled,.net,Iis 7,Precompiled,这不是一个大问题,但如果可能的话,我希望能解决这个问题。我想这只是网站的编译 我的网站在IIS7上的server2008下运行 我有一些只有我使用的区域设置,例如控制面板,它们是.NET网站。在本例中,所讨论的页面在IIS中设置为自己的站点 如果我有一段时间没有访问这个特定的站点,那么当我第一次访问这个页面时,需要一段时间才能加载。。。这只是网站编译吗 我认为IIS中的设置(即在工作进程空闲x分钟后停止工作进程)是改变这一点的关键,对吗 我所说的设置是在网站运行的应用程序池中,称为“空闲超时”。

这不是一个大问题,但如果可能的话,我希望能解决这个问题。我想这只是网站的编译

我的网站在IIS7上的server2008下运行

我有一些只有我使用的区域设置,例如控制面板,它们是.NET网站。在本例中,所讨论的页面在IIS中设置为自己的站点

如果我有一段时间没有访问这个特定的站点,那么当我第一次访问这个页面时,需要一段时间才能加载。。。这只是网站编译吗

我认为IIS中的设置(即在工作进程空闲x分钟后停止工作进程)是改变这一点的关键,对吗

我所说的设置是在网站运行的应用程序池中,称为“空闲超时”。默认设置为20分钟

增加这个值会阻止上述情况发生吗?和/或预编译也会这样做吗


我实际上无法预编译有问题的内容,因为它是第三方产品。只是好奇而已。

是的,增加应用程序池空闲超时设置。这通常不会成为问题,除非在给定的时间段内几乎没有流量。如果网站是公共的,另一个选择是使用类似定期访问你的网站的服务,但我没有通过增加应用程序池超时设置遇到任何问题


我相信这个选项对于托管大量站点或共享托管环境的用户来说更有用,允许不太常用的站点/应用程序池在一段时间后从内存中卸载。但是,如果您的站点上没有资源问题,我总是将设置提高到非常高的水平,这样在预编译/jit魔术发生时,第一次响应不会占用10-15个以上的设置

如果您预编译了一个站点,工作进程是否仍需要10-15秒以上的时间启动。或者,这只是一个问题,与网站没有预先编译?无论如何,我都会增加空闲超时时间,但我想知道预编译是会消除10-15触发,还是会减少它…?我还注意到,我在我们的单片.net基础上遇到编译错误,我必须手动进入以回收apppool来修复它。我正在讨论如何提高空闲时间,使其超过隔夜的低谷期,并放弃循环“定期时间间隔”,以每7小时刷新一次,以避免任何其他问题。