Пул приложений IIS запускается с app_offline.htm в папке приложения
У меня Win Server 2016 с IIS, все обновления применяются с этой даты. Во время обновления сайтов, работающих там, я ставлю app_offline.htm
файл в папке приложения, чтобы закрыть пул приложений.
Для одного конкретного приложения, размещение файла там не остановит приложение. Мне нужно открыть диспетчер задач, убить его один раз, затем он перезапускается (с файлом app_offline там), веб-сайт продолжает открываться как обычно, затем я закрываю его во второй раз, а затем он останется остановленным для обновления.
Это приложение настроено для одного работника и не имеет перекрывающихся работников, то есть новый процесс начнется только после завершения первого. Это конкретное приложение запускает некоторый код во время завершения работы, которое может занять несколько секунд, что может объяснить, почему оно не завершает работу немедленно, но не объясняет, почему после завершения процесса пула оно запускается снова, даже если файл находится там.
Есть идеи?
1 ответ
Проблема заключалась в ограничении по умолчанию для приложения, которое по умолчанию составило 10 секунд, но, очевидно, заняло гораздо больше времени. Явно устанавливая значение в web.config, приложение закрывается не позднее, чем через 10 секунд, что позволяет мне выяснить, почему приложение не закрывалось раньше, а при аренде app_offline.htm работает, как и ожидалось, с этим изменением:
<system.webServer>
<aspNetCore ... shutdownTimeLimit="10" />
</system.webServer>