We have a couple of sites which have some memory problems and fairly often crashes and taking a lot of other sites down with them. So I'm planning to at least put the troublesome sites in their own individual AppPools. I just wanted to make sure that this is a safe move to do or if there are anything I should know about separating AppPools.
views:
150answers:
3There is a memory overhead associated with each app pool (a couple of hunded megabytes if memory serves), so if the problem is a lack of overall memory, this might not help.
Having said that, we run all of our websites in their own app pools by default, but we tend to have a maximum of a handfull on a single server, so I have no experience of large numbers of app pools at once.
We also find the advantages of being able to recycle a single app pool without affecting the other sites is a big advantage.
Finally, as well as isolation (as Guffa mentions) you can tune the settings of each app pool to restrict memory use etc, as well as identities and permissions. (We would tend to run different websites with different accounts, that only had permissions to their own databases for example)
There are a few questions about this on Server Fault too: http://serverfault.com/questions/2106/why-add-additional-application-pools-in-iis
The advantage is that you isolate the site in it's own process.
The disadvantage is that you get more processes running on the server.
So, if you do this for just a few sites, there should be no problem at all.
Advantage:
- Separate credentials per app pool/web site
- Better isolation, recycling etc
- Separate configuration (timeout, memory etc)
Disadvantage:
- Memory usage increases (not so much an issue with 64 bit these days)
Generally, there is no downside. If you have massive multiple sites on one web server, whether to have separate App Pools or not is a minor issue.