操作系统:Windows Server 2012 Standard
IIS:8.0.9200.16384
处理器:4x Xeon 2.67Ghz CPU
RAM:40GB
问题:
我们最近启用了IIS的AutoStart功能,因为这样做我们的应用程序池的启动时间大大增加了。应用程序池似乎正在运行,但似乎在大约30分钟内将其CPU使用率提高到最大25%,并且在该池中运行的网站在完成之前不会响应。我们检查了事件日志,但似乎没有任何故障。我们检查了预加载功能中的记录,这似乎只需要60-90秒。
我们如何诊断导致应用程序池启动延迟的原因?
背景
我们从多个应用程序池(每个池20个站点)提供相同ASP.Net MVC3应用程序的多个副本。我们有大约8个池服务160个站点我们建立了IProcessHostPreloadClient,它在站点启动时从数据库预加载一些设置。我们有第二台服务器具有相同的基本规格,但只有3个20个池,每个池只需要大约5分钟即可启动。
答案 0 :(得分:0)
对于任何有兴趣的人,我们采取了解决/缓解问题的方法:
app_offline.htm功能是我们的关键功能,这意味着我们可以部署新版本的软件,而无需停止和启动应用程序池,从而导致启动时间损失。此外,逐步重新启动应用程序池有助于减轻CPU的压力,这意味着我们可以为每个池提供一致的启动时间。只有在我们进行IIS重置或服务器重启(很少)时才需要这样做。