Самый простой способ, которым я знаю, чтобы сохранить ваш сайт живым, это убедиться, что трафик всегда проходит. Если у вас есть доступ к запланированному исполнителю работ, он должен пинговать фиктивную страницу aspx каждую минуту или две - таким образом, ваше приложение должно работать бесконечно.
Если нет, то есть способы обмануть систему. Вы можете создать элемент кэша, и по истечении этого срока создать элемент кэша. Это будет постоянно запускать код каждые X минут, что будет поддерживать работу приложения. Проблема заключается в том, что если приложение когда-либо умрет (перезагрузка сервера, перезапуск IIS и т. Д.), Приложение будет мертвым, пока кто-то не сделает реальный запрос, и в этот момент оно снова будет жить неопределенно долго.
Этот метод иногда используется для имитации планировщика задач в ASP.NET. Просто имейте в виду, что это не идеально.
РЕДАКТИРОВАТЬ : Для пояснения, вы не просто создадите новый элемент кэша, вы на самом деле сделаете запрос к странице, которая затем, в свою очередь, создаст элемент кэша. Это гарантирует, что другой запрос будет сделан через IIS, который, в свою очередь, запускает полный жизненный цикл, поддерживая приложение в рабочем состоянии.
Даже если вы установили тайм-аут сеанса на высокий уровень, нет гарантии, что он сохранится. Я имел дело с хостинговыми компаниями, которые будут перерабатывать ваш пул приложений после пары минут бездействия, убивая все сеансы, которые вы можете открыть. Они не заботятся о том, что у вас могут быть открытые сессии - они просто пытаются выжать каждый цикл ЦП из своих серверов. Поэтому, если вы пользуетесь виртуальным хостингом, имейте это в виду - вы не сможете контролировать, как часто они убивают ваше приложение.