Подтвердить что ты не робот

Как диагностировать IIS фатальную ошибку связи

У меня есть клиент, использующий IIS и приложение, разработанное нами, в Asp.NET 1.1. В понедельник 4 раза подряд ошибка "Пул приложений, обслуживающий процесс" xxxx, понесла фатальную ошибку связи со службой публикации World Wide Web. Идентификатор процесса был "yyyy". Поле данных содержит номер ошибки ". появилась.

Любая идея о том, как диагностировать это? только ссылка, которую я нашел, говорит об установке инструментов отладки низкого уровня, но прежде чем приступить к анализу низкого уровня, я бы знал, есть ли у кого-то лучшей идеей или подходящей альтернативой.

Проблема (из того, что я вижу) - это что-то в клиентской среде, потому что одно и то же приложение, установленное на других сайтах клиента, по меньшей мере на 20 или 30 разных серверах, и проблема не возникает.

Привет

Массимо

4b9b3361

Ответ 1

Я получаю ту же ошибку, вот несколько деталей:

: Windows Server 2003, IIS 6.0/ASP 3.0, 2,13 ГГц, 1 ГБ оперативной памяти

Мой веб-сайт находится в бета-версии, поэтому у меня почти нет посетителей сайта.

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

Тогда иногда я получаю ошибку:

Пул приложений, обслуживающий процесс "DefaultAppPool", неожиданно завершен. Идентификатор процесса был "3900". Код выхода процесса был "0x800703e9".

которые следуют:

Пул приложений "DefaultAppPool" автоматически отключается из-за ряда сбоев в процессе (процессах), обслуживающих этот пул приложений.

Что затем вызывает сообщение "Недоступно для службы" при просмотре веб-сайта.

прочитав слишком много сообщений об этой проблеме, я сделал следующие шаги:

  • Я читал, что это может быть право доступа к реестру, поэтому я установил монитор и проверил все ошибки W3SVC Access Denied и предоставил разрешение

  • Я читал, что ошибка 0x800703e9 означает стеки через поток, который вызывает сбой w3wp.exe, и я должен установить инструмент Debug и попытаться получить дамп памяти. Я сделал это, но у меня не было дампа, поэтому я установил новый инструмент для отладки, но еще не получил сбой.

Мой веб-сайт выполняет некоторую интеллектуальную обработку данных, которая заставляет сервер работать.

Вывод:

  • Я не знаю, что там происходит... но я знаю, что моя серверная машина способ замедлить ресурс, поэтому я собираюсь обновить и переустановить его, я уверен, что это решит проблему...

  • Проблема возникает постоянно, даже когда мой .net-код простаивает, поэтому это проблема на сервере, а не в моем коде.

  • Я думаю, что первое предупреждение "Процесс, обслуживающий пул приложений..." происходит каждый раз, и время от времени он вызывает перезапуск пула приложений, поэтому привязка отладчик не помогает - процесс продолжает перезагружаться, а отладчик больше не эффективен... Я думаю, что ошибка 0x800703e9 (которая вызывает сервис недоступен), возможно, произойдет, когда пул приложений перезагрузится, я думаю, что для этого требуется много ресурсов, и поскольку моя машина слишком медленная, она получает 0x800703e9... как сказано выше, это стек над потоком, но я думаю, что он вызван низким ресурсом, а не бесконечной рекурсией.

  • Я думаю, что "право доступа к реестру", на которое претендует Microsoft, является проблемой, но я не получил "Service Unavailable", так как это могло бы помочь (подумал, что я все еще получаю предупреждение "Пул приложений, обслуживающий процесс..." ).

Надеюсь, что это поможет кому-то...

Ответ 2

Имела ту же самую проблему в IIS 7, работало несколько отчетов, за исключением одного отчета, который был очень длинным, и он никогда не работал на IIS7 (это было хорошо на низком сервере спецификации).

в IIS7 в пуле приложений. Предварительная настройка я установите "Включить 32-битное приложение" в true и все хорошо сработало

Ответ 3

У меня возникла такая же проблема, когда веб-сайт был развернут на веб-сервере клиента. В этой статье поддержки Microsoft говорится:

"Эта проблема может возникнуть, если учетная запись NT AUTHORITY\NETWORK SERVICE не имеет прав на необходимые ключи реестра.

И это разрешение: "установите разрешения для необходимых разделов реестра, а затем перезапустите IIS 6.0".

В связанной статье есть шаги для этого.

Ответ 4

Я уверен, что вы уже знаете это, но App Pool содержит только 1.1 приложения? Я не помню ошибку, которую вы получаете, когда пул умирает, пытаясь смешать фреймворки (что-то вроде сервера Unavailable), но это более распространено, чем я думал в дикой природе, поэтому я бы дважды проверял.

Скорее всего, это где-то начать.

Изменить: Эта статья в статье также содержит сообщение об ошибке, связанное с разрешениями реестра, какая версия IIS работает на клиенте?

Ответ 5

Еще одна популярная причина (как в моем случае) - один из оконных журналов заполнен.