Пулы приложений не запускаются после iisreset - PullRequest
8 голосов
/ 29 октября 2008

Прежде чем я начну, я знаю, что использование iisreset считается плохой практикой, но в любом случае этого не должно происходить ..

Что имеем:

  • Несколько машин с IIS6 в Windows Server 2003 R2 (как 64, так и 32-разрядных)

  • Несколько веб-сервисов WCF (.NET runtime 2.0) развернуты в нескольких приложениях, каждое со своим собственным пулом приложений, причем каждый пул приложений работает под другой учетной записью Windows.

Что происходит:

  • Все appPools запущены, все службы работают
  • IISReset выполняется (или машина перезагружается)
  • IIS возвращается, но не все пулы приложений запускаются правильно. Иногда они все возвращаются, иногда один или несколько пулов не запускаются. Однако их можно запустить вручную.

Это "нормальное" поведение iis, и я должен просто избегать использования iisreset, или мы делаем что-то не так в нашем .NET-коде?

Ответы [ 5 ]

10 голосов
/ 29 октября 2008

Пулы приложений должны перезапускаться по iisreset, но они работают вне iis (в COM +) для надежности. Это означает, что они могут не вернуться, если приложение работает неправильно, но IIS и другие приложения вернутся (должны). Так что да, это "нормально".

P.S. Я также хотел бы "ВЫХОДИТЬ" из себя как гордый пользователь iisreset. Плохая практика? Бах! ; D

5 голосов
/ 29 октября 2008

IIS не сразу запускает рабочие процессы ASP.NET (w3wp.exe), пока не поступит первый запрос. Когда вы говорите «не запущен», означает ли это, что вы пытаетесь получить доступ к некоторым веб-службам WCF (после iisreset), и вы получаете сообщение об ошибке службы недоступно, потому что appPool не может быть запущен? Видите ли вы какие-либо записи, связанные с IIS W3SVC, в журналах событий?

Если они есть, они могут подсказать вам, почему они не могут начать; разместите их здесь.

3 голосов
/ 09 июля 2015

Похожая проблема - после перезапуска IIS DefaultAppPool был остановлен.

В журналах событий приложения обнаружена ошибка:

Windows не может войти в систему, потому что ваш профиль не может быть загружен. Убедитесь, что вы подключены к сети или ваша сеть работает правильно. Если проблема не устраняется, обратитесь к администратору сети.
ДЕТАЛИ - Доступ запрещен.

Исправлено установкой в ​​DefaultAppPool Расширенные настройки опция Загрузка профиля пользователя в Ложь .

Надеюсь, это может быть полезно.

3 голосов
/ 28 января 2010

Причина:

IIS не сразу запускает рабочие процессы ASP.NET (w3wp.exe), пока не поступит первый запрос. Когда он говорит «не запущен», это означает, что вы пытаетесь получить доступ к некоторым веб-службам WCF (после того, как iisreset) не удалось из-за объекта занимал некоторое место в памяти, и вы получили ошибку Service Unavailable, потому что appPool не может быть запущен.

Обход:

Создать пакетный файл с помощью следующих команд и запланировать его.

чистый стоп 23svc

net stop msftpsvc

net stop smtpsvc

чистая остановка PleskControlPanel

net stop HTTPFilter

iisreset / restart

net start w3svc

net start msftpsvc

net start smtpsvc

net start PleskControlPanel

net Start HTTPFilter

0 голосов
/ 29 октября 2008

В предыдущей роли поддержки я управлял несколькими серверами IIS, на которых выполнялись все виды беспорядка .NET. Когда AppPool не запускался, обычно это были неверные учетные данные для входа.

...