Просто предположение, но, возможно, вы кэшируете некоторые данные, которые необходимо обновить после того, как сайт простаивал в течение некоторого времени?
Если это не так, то я предполагаю, что рабочий процесс по какой-то причине был остановлен (это может быть по какой-то другой причине, кроме времени простоя в IIS). Если вам нужно проверить, так ли это, вы можете добавить некоторый код в событие Application_Start, которое регистрирует событие запуска в файле или в любой другой имеющейся записи. Через некоторое время работы вы можете просмотреть журналы и посмотреть, сколько событий Application_Start произошло.