На Windows Server 2008, как устранить неполадки зависания IIS, когда процессор, дисковый ввод-вывод в норме?

Может кто-нибудь порекомендовать хорошую стратегию для устранения неполадок IIS, которая висит на Windows 2008?

Обычно я проверяю следующее в Process Explorer:

  • ЦПУ

  • Дисковый ввод / вывод

  • Переключение контекста Delta

Однако в определенных ситуациях все эти значения низкие, и все же IIS зависает.

Есть ли в Process Monitor (sysinternals) что-нибудь, что должно поднимать красный флаг?

3 ответа

Когда IIS не отвечает, но не похоже, что он что-то делает, возможно, он чего-то ждет. Фактическая проблема часто зависит от того, как запрограммировано ваше приложение. Вот пара примеров.

  • Система, которая возвращает файл, сохраненный в памяти, многим клиентам. Если достаточное количество клиентов запросит файл, у вас закончатся TCP-соединения, и система будет выглядеть так, как будто она ничего не делает.
  • Приложение в IIS делает звонок в веб-сервис. Существует ограничение по умолчанию в 2 http-соединения, поэтому все помещается в очередь для ожидания доступного соединения.

Проверьте журнал Httperr и IIS

http://msdn.microsoft.com/en-us/library/aa954365(BTS.10).aspx

Что вы имеете в виду под "повесить трубку"? Если вы размещаете приложение.Net, само приложение может зависать при вызове базы данных или что-то в этом роде. Если он зависает при обслуживании статических файлов (.htm, .jpg и т. Д.), Это может быть проблемой IIS.

Другие вопросы по тегам