IIS время от времени зависает, в последнее время чаще

У нас есть производственное приложение (ASP.NET MCV 3), работающее на IIS 7.5, Windows Server 2008 R2 Enterprise, и моя проблема заключается в том, что время от времени приложение перестает отвечать на запросы. Каждый сделанный запрос занимает вечность, и с сервера не возвращается никакого результата. Мой вопрос таков: где я должен искать, что что-то идет не так, и, что более важно, что это за вещи.

У меня есть полный доступ к этой машине, поэтому, если может потребоваться какая-либо другая информация (журналы IIS/Windows и т. д.), я могу ее предоставить.

Спасибо, и я надеюсь, что это не дубликат. Если это так, пожалуйста, укажите мне на другой пост.

Последние выводы: мне удалось воспроизвести эту ошибку и в нашей тестовой среде, но я до сих пор не знаю, что ее вызывает. Это происходит, когда два пользователя вошли в систему с двумя разными учетными записями. В какой-то момент делается запрос, который никогда не завершается. Он не дает тайм-аут, он просто говорит (ожидает) навсегда. Повторное использование пула приложений решает эту проблему. Есть предположения?

Обновления: похоже, это проблема пула приложений: когда тестовое приложение перемещается в DefaultAppPool (используя, следовательно, ApplicationPoolIdentity), сбой больше не появляется. Когда я снова переключаюсь на MyAppPool (используя NetworkService в качестве пользователя), приложение снова начинает зависать. Таким образом, переход на DefaultAppPool должен быть правильным шагом. К сожалению, это не применимо (скорее не может) к рабочему серверу. Там пользователь должен быть конкретным, чтобы выполнять загрузку/выгрузку каких-либо файлов в/из частного NAS. Как я могу заставить все работать отсюда? Выдает себя за пользователя кода? Клонировать разрешения пользователя ApplicationPoolIdentity?


person Silviu Preda    schedule 30.01.2014    source источник


Ответы (1)


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

person Silviu Preda    schedule 03.02.2014