Перезапустить IIS / Recycle App Pool после X числа ошибок? - PullRequest
1 голос
/ 03 августа 2009

Моя компания страдает от печально известной ошибки " Hashtable. Ошибка слишком высокого коэффициента загрузки " на нашем веб-ферме [6 Server 2003 SP2 boxs с IIS 6.0]. Я понимаю, что существует обновление kb, которое устранит эту ошибку (см. Ссылку), однако другие сотрудники отдела не связываются с Microsoft своевременно (и у меня нет на это полномочий). Мы обнаружили, что либо полное восстановление iisreset, либо утилизация пула приложений решают проблемы.

Есть ли способ, которым мы могли бы настроить IIS для отслеживания количества ошибок, которые он генерирует, а также перерабатывать и / или сбрасывать после достижения определенного порога? Это должно быть довольно легко сказать - мы получаем буквально 1000+ ошибок в минуту. на уязвимом сервере при возникновении этой ошибки.

Ответы [ 2 ]

1 голос
/ 03 августа 2009

Если бы вы могли отловить ошибку (что звучит так, как будто вы могли) в приложении, вы могли бы заставить приложение перезапускать себя. См. http://www.west -wind.com / Weblog / posts / 5688.aspx для получения подробной информации о том, как это сделать.

Конечно, вы должны знать о проблемах с этим.

В качестве альтернативы вы можете получить утилизацию пула приложений по следующим критериям:

  • По истечении времени.
  • После X запросов.
  • В назначенное время.
  • После использования заданного объема памяти.

Возможно, вы могли бы найти один из тех критериев, которые помогают?

0 голосов
/ 03 августа 2009

Вы можете создать небольшое приложение-монитор для проверки perfmon и выполнить команду для перезапуска пула приложений при достижении порогового значения (я полагаю, что существует интерфейс WMI, который может перезапустить один пул приложений)

не фантастическое решение, я признаю ...

...