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

В чем причина «превышения лимита времени пула приложений при завершении работы»?

У меня есть веб-сайт, который случайным образом выдает ошибку 500 (обычно раз в несколько часов). Я проверил просмотр событий и увидел следующую ошибку:

Пул приложений, обслуживающих процесс 'xxxxxxx'превышены временные ограничения во время выключения. Идентификатор процесса был «xxxx».

Интересно, какова потенциальная причина этой проблемы, чтобы я мог ее исправить?

Каждый веб-сайт (и, возможно, каждое веб-приложение) - это IIS, связанный с пулом приложений, в котором хранится конфигурация процесса размещения.

Некоторые из этих свойств связаны с тем, как процесс перезапускается (завершается и перезапускается). По умолчанию каждое приложение будет завершаться каждые 1740 минут (29 часов), но оно также может быть переработано, если оно не используется в течение (опять же, по умолчанию) 20 минут, если оно не отвечает на «пинг» (на самом деле, мониторинг работоспособности бьет) . Другие ограничения могут быть установлены администратором.

Когда приложение перерабатывается, процесс контейнера останавливается. У него есть (по умолчанию) 90 секунд для правильного выключения, иначе он будет принудительно закрыт.

Итак, причина вашей проблемы в том, что достигнут один из пределов повторного использования для вашего веб-приложения, в результате чего IIS пытается его завершить. К сожалению, приложение не закрывается вовремя, что вызывает (временную) ошибку 500.

Теперь есть еще один аспект: если приложение «дает сбой» (т.е. отправляет обратно ошибку сервера) более (по умолчанию) 5 раз в течение 5 минут, оно будет отключено IIS и останется отключенным, пока вы не перезапустите его вручную. Это.

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