В случае сбоя функциональности в одном виртуальном каталоге да, это может привести к сбою или нанести вред другим приложениям в том же пуле приложений, в том числе в других виртуальных каталогах . Защитите свои приложения, поместив их в отдельные пулы приложений.
Виртуальные каталоги не сами по себе не разделяют память или ресурсы. Это имеет и другие последствия. Например, на ваши статические переменные в одном приложении может влиять установка статических переменных в другом приложении в том же пуле приложений.
В IIS 6 цель пула приложений довольно проста: разделить приложения так, чтобы один сбой не сбивал остальные. В IIS 7 это по-прежнему основная цель, но в этом есть немного больше .
Редактировать : Для пояснения: каждый пул приложений - это собственный «рабочий процесс», и один сбой не повредит другим пулам приложений. Каждый виртуальный каталог - это просто: способ заставить IIS действовать так, как если бы в этом месте был каталог. Когда вы создаете виртуальный каталог с тем же именем и местоположением, что и папка, на которую он указывает, по умолчанию это на самом деле ничего не делает . Вы можете использовать виртуальные каталоги по разным причинам, помимо того, что URL-адреса должны быть такими, как вы хотите: Вы можете использовать их для безопасности. И вы можете использовать их для размещения вызовов в определенных пулах приложений, как мы уже обсуждали.
Люди часто приравнивают виртуальные каталоги к веб-приложениям, потому что это обычно , где вы хотите использовать возможности настройки виртуальных каталогов - для веб-приложения.
Состояние сеанса поддерживается только внутри веб-приложения, а не среди всех веб-приложений в пуле приложений. Чтобы хранить значения, используемые разными веб-приложениями, вам нужно сделать что-то еще. Кэш ASP.NET, файлы cookie, базы данных и т. Д. Размещение разных папок в приложении в виде разных виртуальных каталогов и отдельных пулов приложений приведет к их разным процессам и разрушению общего состояния сеанса.