2011-01-31 3 views
2

У меня возникли проблемы с сайтом ASP.net (framework 3.5, IIS6) с очень медленным временем ответа «первого удара». Я предполагаю, что проблема связана с app pool recycling и необходимость прогреваться.Избегание использования бассейна бассейна в IIS

Я додумался. В рамках сайта у меня есть HTTP-модуль, который закручивает «бесконечный цикл» в отдельном потоке, который периодически (каждые 5 секунд) вызывает sproc на SQL, чтобы убедиться, что база данных все еще существует. Мне интересно, может ли подобный подход работать, чтобы заставить сайт сделать HTTP-запрос «самим собой» как живой.

Мой вопрос, прежде чем я пойду и сделаю это, может ли кто-нибудь подумать о какой-либо причине, почему это не сработает? Например, что-то вроде «о нет ... ASP.Net выяснит, что вы играете с собой, а не просматриваете весь жизненный цикл страницы ... и т. Д.».

+1

IIS7.5 имеет функцию под названием 'Всегда Запуск'. Скотт Гатри написал об этом еще в 2009 году. Http://weblogs.asp.net/scottgu/archive/2009/09/15/auto-start-asp-net-applications-vs-2010-and-net-4-0 -series.aspx – Phill

ответ

2

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

Я предлагаю использовать скрипт/программу на сервере, большинство установочных файлов sharepoint должны иметь один.

Простой сценарий:

http://blogs.msdn.com/b/joelo/archive/2006/08/13/697044.aspx

+0

А, спасибо. Я вижу проблему. Приветствия. –

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