2012-05-14 1 views
2

У меня есть веб-сервис ASP.NET (стиль SOAP), который работает в нашей производственной среде.Почему метод Application_Start вызывался на моем веб-сервисе ASP.NET?

Наши ребята из сервера установили такие вещи, что такие вещи, как запуск и остановка служб Windows и т. Д., Отправляются по электронной почте соответствующим сторонам.

В последнее время мой босс был получать письма о моем веб-службы ASP.NET:

The (My Web Service's Name) Application_Start method was called 

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

Однако мой босс говорит мне, что он получал это письмо «десятки» раз в день.

Я полагаю, что моя теория выше по-прежнему возможна, особенно учитывая, как она распространена на 3-4 серверах в нашем веб-уровне, но есть ли другие объяснения, почему это может происходить так часто?

На данный момент я не знаю, посылаются ли по электронной почте Application_End или нет, или какое отношение.

+1

Ваша теория звучит разумно. Проверьте настройки IIS для утилизации пула приложений. – asawyer

ответ

2

Приложение может быть загружено, когда превышены некоторые из параметров в <processModel>. idleTimeout может быть один в вашем случае, но и requestLimit и MemoryLimit.

Кроме того, и это основано на реальной истории, если вы начинаете какую-либо нить, запускаете что-либо в отдельном потоке threadpool или используете TPL, убедитесь, что вы поймали любое исключение, которое может быть выбрано. Неиспользованные исключения из этих потоков убьют рабочий процесс. Проверьте журналы приложений в журнале событий Windows. Если это так, вы должны увидеть красные значки ошибок приложения значка примерно в то же время, когда электронные письма исчезнут.

 Смежные вопросы

  • Нет связанных вопросов^_^