13 我在Windows Server 2003上有多个以IIS 6.0托管的网站。其中一些使用.Net 1.1框架,而另一些使用.Net 2.0。我目前为每个框架都设置了应用程序池。还有其他原因来添加其他应用程序池吗? windows iis application-pools — 乔纳森·沃特尼 source
24 是的,很多: AppPools可以作为不同的身份运行,因此您可以通过这种方式限制权限。 您可以为每个应用程序池分配不同的标识,以便在运行任务管理器时知道哪个w3wp.exe。 您可以回收/重新启动一个应用程序池,而不会影响在不同应用程序池中运行的网站。 如果您的网站存在内存泄漏或行为异常,则可以将其放在应用程序池中,这样就不会影响其他网站 如果您的网站占用大量CPU资源(例如,调整照片大小),则可以将其放在自己的应用程序池中并限制其CPU使用率 如果您有多个网站,每个网站都有自己的SQL数据库,则可以使用活动目录身份验证,而不是将用户名/密码存储在web.config中。 — 波特曼 source
7 我在以下方面创建IIS应用程序池和单独的应用程序: 关键任务应用程序拥有自己的应用程序池:通过这种方式,我可以将它们与有问题的应用程序隔离。它使单独的配置成为可能,如果有问题,我可以更轻松地进行监视或故障排除。 按类型隔离应用程序:按语言/技术或.NET Framework版本进行池化。您可以在同一池中混合使用ASP.NET和经典ASP,但是如果ASP和ASP.NET都在同一池中,并且如果您的ASP应用程序有问题,则需要重新启动工作进程,即ASP。 NET应用程序也将被回收。 有问题的应用程序(例如内存泄漏或CPU使用率高的应用程序,数据库连接泄漏等)与正常应用程序分开。新的应用程序进入“试用期”池,该池将监视正常运行时间和性能。如果该应用程序随着时间的推移证明是稳定的,则将其移至普通应用程序的池中。否则,它将保持隔离状态。这有助于将更多无问题的应用组合在一起。 — 喷溅 source
2 此外,出于安全原因,除了波特曼的答案。限制资源对池的访问。参见http://blogs.iis.net/tomwoolums/archive/2008/12/17/iis-7-0-application-pools.aspx — CPU_BUSY source 本文适用于IIS7。它是否同样适用于IIS 6? — 乔纳森·沃特尼 当然可以 — -CPU_BUSY