Konfiguruję Auto-Start ASP.NET w mojej roli sieciowej Windows Azure (Używam programów ASP.NET 4.5 i IIS 8 w systemie Windows Server 2012). Zasadniczo podążałem za those instructions.Program IIS Auto-Start nie wyłączający limitu czasu bezczynności
Ustawiam startMode="AlwaysRunning"
na puli aplikacji i preloadEnabled="true"
na stronie internetowej za pomocą metody OnStart webrole.
Użyłem dostępu zdalnego i zweryfikowałem, że te dwie właściwości są poprawnie ustawione (przez Menedżera usług IIS, a także sprawdzanie pliku applicationHost.config).
Dodałem też to do pliku web.config:
<applicationInitialization skipManagedModules="true">
<add initializationPage="/" />
</applicationInitialization>
Ten page mówi bezczynności powinna być wyłączona, gdy auto-start jest włączona. Jednak z mojego logu wynika, że tak nie jest, pula aplikacji zostaje ponownie uruchomiona po jakiejś bezczynności. Mogę również zauważyć, że w dzienniku zdarzeń (kilka razy w ciągu 6 godzin):
Proces roboczy z procesu id „772” obsługujących pulę aplikacji „cf9d3284-6454-4bbf-8a8e-efd73df4ed83” było wyłączenie z powodu do bezczynności. Konfiguracja limitu czasu puli aplikacji została ustawiona na 20 minut. W razie potrzeby zostanie uruchomiony nowy proces roboczy.
Dziwne, że wydaje się, że nowa pula aplikacji jest uruchamiana natychmiast po zalogowaniu, nawet jeśli nie ma żądanej strony. Więc jeśli nie otrzymam jednego żądania w ciągu godziny, pula aplikacji jest ponownie przetwarzana i ponownie uruchamiana 3 razy (potwierdziłem to z dzienników). Czy moja konfiguracja jest nieprawidłowa, czy też coś mi brakuje?