IIS Precache应用程序池事件

时间:2015-11-04 22:23:56

标签: html asp.net asp.net-mvc iis iis-7

我们有一个非常大的asp.net LOB Web应用程序。问题是,每次启动应用程序池时(无论是第一次,还是应用程序池都被回收),启动并点击第一页需要10秒或更长时间。这使您处于查看白页和加载微调器的状态,直到IIS准备好提供页面为止。这不是世界末日,因为它通常只是一次性的东西,只有第一个人经历过这一点。我只是想知道是否有一个事件我们可以挂钩来提供一个页面并向用户显示某种类型的简单启动画面,以给他们一些类型的反馈而不是加载状态。

有没有人对如何将其挂钩到IIS / asp.net有任何想法?

1 个答案:

答案 0 :(得分:3)

您可以使用应用程序初始化模块。如果运行IIS 8.0或更高版本,则它是内置的,如果运行IIS 7.5,则可以下载并安装它。

希望您运行的是.NET 4.5。将应用程序启动模式设置为AlwaysRunning。然后启用预加载。

然后在这里你要将它添加到system.WebServer部分的web.config中

obj = waiting * 1000.0 + cost

startup.htm是您的默认加载屏幕。如果有人在访问Web应用程序时尝试访问它,它将被重新映射到该应用程序。只需添加一个简单的JavaScript刷新位置脚本即可。

此链接可为您提供所需的一切。同样,我假设您使用的是较新版本的ASP.NET和IIS。

http://www.iis.net/learn/get-started/whats-new-in-iis-8/iis-80-application-initialization