Запуск IIS 6 в Windows Server 2003 Web.
У нас есть сторонние компоненты, которые вызывают утечку памяти, поэтому мы запланировали периодические задания по перезапуску IIS. Работа просто звонит iisrestart /reset
который, похоже, выполняет свою работу ... но он обязательно генерирует большую кучу событий журнала событий, включая 3 ошибки и предупреждение. Может, мы делаем что-то не так?
Есть ли более «чистый» способ переработать процессы IIS, чтобы Windows не расстраивалась из-за нас? По мере улучшения нашего мониторинга события ошибок на веб-серверах prod вызывают ненужные отвлекающие факторы.
Для любопытных, вот как выглядит «цикл» событий (я немного сократил текст описания для краткости). Все это происходит за 1-2 секунды:
Предупреждение - WinRM - ID 10149 - служба WinRM не прослушивает запросы WS-Management
Информация - IISCTLS - ID 6 - Сброс IIS обнаружил ошибку при остановке служб
Информация - Диспетчер управления службами - ID 7035 - служба SMTP успешно отправила команду остановки
Информация - Диспетчер управления службами - ID 7035 - Служба удаленного управления Windows успешно отправила команду остановки
Информация - Диспетчер управления службами - ID 7036 - Удаленное управление Windows перешло в состояние остановки
ошибка - Диспетчер управления службами - ID 7034 - служба публикации в Интернете неожиданно прервана. Он сделал это x раз
ошибка - Диспетчер управления службами - ID 7034 - Служба администратора IIS неожиданно прервана
ошибка - Диспетчер управления службами - ID 7034 - служба SMTP неожиданно прервана
Информация - IISCTLS -ID 4 - команда уничтожения IIS, полученная от пользователя.
Информация - IISCTLS - ID 2 - команда остановки IIS получена от пользователя.
Информация - Диспетчер управления службами - ID 7035 - Служба администрирования IIS успешно отправила управление запуском
Информация - Диспетчер управления службами - ID 7035 - Служба публикации в Интернете успешно отправила управление запуском
Информация - Диспетчер управления службами - ID 7035 - службе SMTP было успешно отправлено управление запуском
Информация - Диспетчер управления службами - ID 7035 - Служба удаленного управления Windows успешно отправила управление запуском
Вы используете IIS в режиме изоляции рабочих процессов? Если это так, лучшим решением было бы использовать функции повторного использования пула приложений. Вы можете поместить вызывающее нарушение приложение в отдельный пул, а затем перезапустить только его процесс на основе различных критериев (каждые X минут, или когда использование памяти достигает Y мегабайт, или когда у вас есть Z запросов к приложению и т. Д.)
Ответ MattB лучше всего (IMO), другой вариант - убить процесс пула приложений.
Это требует немного больше работы, потому что вам нужно:
Однако при этом не происходит повторного использования всей службы IIS (которая генерирует сообщения в вашем журнале).