Michael Graham has written a great article about quick troubleshooting for high memory ASP.NET issues:

The only point I don't agree with - in context with MCMS - is about process recylcling. For MCMS it is very bad if the worker process gets recycled as this ensures that the MCMS memory cache gets invalidated and has to be repopulated. This can cause significant performance problems on the MCMS site and also cause heavy load against the backend SQL server machine. But the other points in this article fully apply to an ASP.NET based MCMS site: