目前,在我们的生产IIS Web场中,我们在一个应用程序池(默认应用程序池)中托管了大约15个应用程序。有两个网站和大约13个虚拟目录。
一位同事建议我们更改IIS配置,以便每个应用程序都是一个单独的应用程序池(具有相同的设置)。
这样做有任何缺点或潜在问题吗? ASP.NET应用程序是否可以构建为满足它们都在同一个应用程序池中的要求?
答案 0 :(得分:7)
我怀疑他们是否考虑到了这个要求,除非他们出于某种原因依赖共享内存。否则,对于描述的场景......
优点(单独的应用程序池):
<强>缺点:强>
*我不确定.NET如何隔离与 HttpRuntime 缓存相关的同一应用程序池中的网站;对于会话,“应用程序唯一性”(1)由以下内容确定:
这就是阻止您在同一个应用程序池中跨不同网站共享会话的原因;但是,共享缓存数据可能更容易。总的来说,讨论与为特定应用程序部署 Web Garden 的优缺点重叠(2)。
1)
http://support.microsoft.com/?id=325056
http://rodiniz.spaces.live.com/blog/cns!F2A56AAF89A7E43A!658.entry
2)
http://nicholas.piasecki.name/blog/2009/02/on-web-gardens-aspnet-and-iis-60/
答案 1 :(得分:2)
除了配置时间和(可能)更多内存要求之外,使用多个应用程序池没有任何不利因素。
(只是要清楚......所需的内存会因许多因素而异 - 但有一种方法是,一个池中的15个应用程序使用的内存比15个池中的15个应用程序多。如果每个应用程序不需要太多内存和应用程序在不同的时间使用,并且不经常使用。)