UPDATE -- process to replicate issue:
1) Create a website project at c:projects
estart-demo
2) Add default web.config and a dummy aspx page test.aspx
3) Map IIS to point to the root folder c:projects
estart-demo
4) Monitor application restarts using perfmon, health monitoring, tracking in global.asax Application_End, etc.
5) Request page in browser http://localhost/test.aspx
application start
6) Create new folder c:projects
estart-demoasdf
application end
7) Request page in browser http://localhost/test.aspx
application start
8) Rename folder c:projects
estart-demoasdf to c:projects
estart-demoasdf1
application end
end update
We are using a back-end CMS to generate files and folders in an ASP.NET site.
Users are able to create/modify/delete files and push these out to the web farm.
One problem we have noticed:
When the user creates, renames or deletes a folder, it causes the App
Domain to restart. As a consequence,
session, cache, etc. are all lost.
Note it doesn't need to be a special folder like /bin or /App_Code either.
Is there any way to prevent this behavior?
It is really hampering performance for two reasons:
- Cache is dumped when app domain restarts
- App domain needs to be re-built after restart
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…