Кажется, что мои сайты asp.net на моем веб-сервере очень медленно загружаются, если к ним не обращались какое-то время.
Переходит ли процессор ASP.NET в режим ожидания или сна, если он не использовался в течение определенного периода времени?
Лучше ли мне исправить это, настроив ASP.NET или написав какую-нибудь программу для частого посещения моих сайтов, чтобы он не заснул?
В зависимости от вашей конфигурации пул приложений, назначенный вашему приложению ASP.net, AppPool будет повторно использоваться в определенное время дня или после определенного количества запросов. Как только это произойдет, он заставит ASP.net перекомпилировать сайт. Есть хороший обзор компиляции ASP.net на MSDN.
По StackOverfolow также есть несколько вопросов:
Я использую два шага, чтобы сделать это лучше:
В качестве примера, если вы смогли определить, что ваш сайт редко используется в 0200, вы можете настроить свой пул приложений следующим образом (IIS Config -> Щелкните правой кнопкой мыши пул приложений -> Щелкните «Recycling ...»):
(источник: richard-slater.co.uk)
Вышеупомянутый диалог взят из Windows 7, однако я не думаю, что диалог сильно изменился между Windows 2008 и Windows 7/2007 R2.
Возможно, пул приложений простаивает. Вы можете изменить настройку времени простоя на 0 (ноль), что эффективно отключает время ожидания, чтобы пул приложений никогда не отключался из-за простоя. Вы можете найти этот параметр в графическом интерфейсе в расширенных настройках. См. Это сообщение в блоге: http://brad.kingsleyblog.com/IIS7-Application-Pool-Idle-Time-out-Settings. Вы также можете использовать такой инструмент, как smartping (я не использовал id) http://forums.smartertools.com/showthread.php/8511-SmarterPing-Website-Keep-Alive-Utility. Также появился новый модуль от Microsoft, работающий с IIS7.5. http://www.iis.net/downloads/microsoft/application-initialization информация здесь http://www.iis.net/learn/get-started/whats-new-in-iis-8/iis-80-application-initialization#TOC301259898