На 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.