Как отладить проблему IIS, когда запросы, поставленные в очередь, внезапно увеличиваются и сервер не может ответить?
У меня есть сервер IIS 6, обслуживающий приложение, использующее сочетание классического ASP и ASP.NET.
У меня все чаще возникают проблемы, когда количество запросов в очереди запросов ASP.NET (наблюдаемое с помощью счетчика ASP.NET\Requests Queued) начинает увеличиваться до такой степени, что сервер больше не может обслуживать запросы. Это происходит через три или четыре минуты с момента, когда запросы в очереди начинают увеличиваться. Переработка пула приложений восстанавливает сервис.
Обычно количество запросов в очереди равно нулю, и иногда возникают небольшие всплески, но кажется, что один или два раза в день количество запросов блокирует очередь, и запросы в очереди начинают увеличиваться.
Я подозреваю, что есть проблемы с сетью, приводящие к тому, что клиенты теряют свое соединение (и повторно отправляют свой запрос), и запросы в очереди продолжаются несмотря на потерю их клиента.
Как я могу диагностировать проблему? Могу ли я посмотреть состояние запросов в очереди? Нужен ли мне инструмент диагностики отладки MS или один из этих инструментов?
2 ответа
Я обнаружил, что инструмент MS Trace Diagnostics (IISReqMon) из этого списка "Полезных инструментов и дополнений для устранения неполадок IIS и IIS7" даст мне информацию о текущих рабочих процессах и их запросах в пуле приложений.
Не очень помогает в отладке, но я бы заподозрил тупик в коде, а не в сети, поскольку IIS довольно хорошо отлажен, насколько это связано с подключением. Я не ожидал бы, что это потерпит неудачу.
Я предполагаю, что ваш сайт стал более загруженным в последнее время, поэтому проблемы тупика.