Назад | Перейти на главную страницу

Как убить одиночный запрос в IIS?

Я использую IISPeek и вижу, что на странице с ошибками висит единственный запрос. Я исправил ошибку, чтобы другие, открывшие страницу, не столкнулись с ней, но страница все еще активна почти через час.

Я бы предпочел не останавливать все приложение, так как в настоящее время работают некоторые важные процессы.

Через IISPeek у меня есть номер запроса (9f0002008001238e) и clientIP. Можно ли что-нибудь из этого использовать для остановки текущего запроса?

Ты можешь использовать Обозреватель процессов сделать это. Войдите в Properties проблемного процесса w3wp.exe выберите Threads вкладку, затем выберите длительный поток и используйте Kill кнопку, чтобы убить поток. Также обратите внимание, что вы также можете использовать Stack кнопку, чтобы получить трассировку стека потока, чтобы, надеюсь, помочь определить, где в коде он зависает.

Вы не можете остановить зависший индивидуальный запрос. Для этого вам необходимо переработать пул приложений.

В качестве альтернативы можно подключиться к отладчику и завершить поток запроса. Если поток завис, у него нет возможности добровольно завершить работу.

Имейте в виду, что при взломе отладчика весь процесс приостанавливается. И если вы не сделаете .detach перед выходом, процесс завершится, что в любом случае функционально напоминает повторный цикл.

Дополнительный шаг: надеюсь, что ничего не сломается, когда вы это сделаете.

Некоторое решение: отключить сетевое соединение сервера, не нужно перезапускать IIS.