Last post Aug 11, 2013 08:49 PM by Javen Yao - MSFT
Aug 06, 2013 01:51 AMemail@example.com|LINK
I have faced an strange issue with my application.
Application get initialized randomly when left for some idle time. Finding some solution over net , I changed application pool's settings like increased recycling time, set Idle Time-out to zero in advance setting of application pool but no luck.
I have used an splash screen mentioned in <applicationInitialize> under <system.WebServer> in web.config tag that comes when application get initialize on first request. So if I use application after some times I see this splash screen. It happens randomly
because sometimes it does not happen even if I do not use application for 2 days and sometimes it happens in same day if I left my application idle for sometime.
I really unable to understand now why this is happening ?
I have hosted my application on IIS 7.5.
Please let me know if I have posed this question in wrong forum and suggest me where to post this.
Please help me. Thanks in advance to all.
Aug 06, 2013 04:34 AM|stmarti|LINK
Maybe your app crashing randomly. It happend for me because of some assembly incompatibility. In this case however you will get some error message in the eventlog.
For the application pool advanced setting, you can also turn off "Ping Enabled".
Aug 06, 2013 06:42 AMfirstname.lastname@example.org|LINK
Thanks for reply.
I checked eventlog then it showed to me that "application pool was shutdown due to inactivity". After exploring about it over net and I tried with setting Idle TIme-out to zero but application still intialized randomly.
Aug 06, 2013 11:02 AM|stmarti|LINK
In the advanced settings set
Start Automatically = true
Start Mode = AlwaysRunning
In the process model category
Idle Time-out (minutes) = 0
(Not sure all above settings available in 7.5)
Aug 11, 2013 08:49 PM|Javen Yao - MSFT|LINK
Internet Information Services (IIS) application pools can be periodically recycled to avoid unstable states that can lead to application crashes, hangs, or memory leaks. By default, application pool recycling is overlapped, which means that the worker process
that is to be shut down is kept running until after a new worker process is started. After a new worker process starts, new requests are passed to it. The old worker process shuts down after it finishes processing its existing requests, or after a configured
time-out, whichever comes first. This way of recycling ensures uninterrupted service to clients. However, if an application in the application pool cannot run more than one instance of itself at a time, overlapping rotation can be disabled.