Не путайте пулы приложений и домены приложений.AppDomain - это граница изоляции внутри процесса.Они предназначены для изоляции и обеспечения безопасности вокруг управляемого кода, который выполняется.
Пулы приложений - это функция IIS, которая позволяет пулу обрабатывать запросы для нескольких сайтов.Они обрабатывают это путем запуска нескольких экземпляров AppDomain
в рабочих процессах (aspnet_wp.exe или w3wp.exe).Хотя технически вы можете запустить несколько AppDomain
экземпляров для каждого сайта, обычно это одно AppDomain
для одного приложения IIS.
Если у вас есть несколько сайтов в одном пуле приложений (и это совместно использует рабочие процессы),если один из этих сайтов начинает потреблять много ресурсов, это может напрямую повлиять на другие сайты, работающие в том же пуле приложений.
Группируя (и разделяя) сайты в логические группы (пулы приложений), вы можете лучшеуправлять поведением сайтов.
HTTP.SYS - это стек драйверов режима ядра, являющийся частью подсистем Windows.Он обеспечивает управление протоколом HTTP в режиме ядра (версии, предшествующие IIS6, использовали winsock в режиме пользователя).Если HTTP.SYS работает на уровне ядра, в случае сбоя рабочего процесса запрос может быть поставлен в очередь, а затем направлен новому рабочему процессу, который будет запущен.
При создании сайта в IIS6он регистрирует сайт с помощью HTTP.SYS, который затем может направлять запросы, поступающие в соответствующий рабочий процесс.