UPDATE - процесс репликации проблемы:
1) Создайте проект веб-сайта c:\projects\restart-demo
2) Добавьте файл web.config по умолчанию и страницу dummy aspx test.aspx
3) Сопоставьте IIS, чтобы указать на корневую папку c:\projects\restart-demo
4) Мониторинг приложений перезапускается с использованием perfmon, мониторинга работоспособности, отслеживания в global.asax Application_End и т.д.
5) Запросить страницу в браузере http://localhost/test.aspx
запуск приложения
6) Создайте новую папку c:\projects\restart-demo\asdf
конец приложения
7) Запросить страницу в браузере http://localhost/test.aspx
запуск приложения
8) Переименуйте папку c:\projects\restart-demo\asdf в c:\projects\restart-demo\asdf1
конец приложения
окончательное обновление
Мы используем встроенную CMS для создания файлов и папок на сайте ASP.NET.
Пользователи могут создавать/изменять/удалять файлы и выталкивать их в веб-ферму.
Одна проблема, которую мы заметили:
Когда пользователь создает, переименовывает или удаляет папку, он вызывает приложение Домен для перезагрузки. Как следствие, сеанс, кеш и т.д. все потеряны.
Заметьте, что не обязательно должна быть специальная папка, например /bin или/App_Code.
Есть ли способ предотвратить это поведение?
Это действительно затрудняет работу по двум причинам:
- Кэш удаляется при перезагрузке домена приложения
- После перезагрузки домен приложения необходимо перезагрузить.