.NET App Pool issues and policies

We use our own .NET CMS for our sites and have been for several years. Up until maybe a month ago all sites loaded nice and fast. Lately, we've been noticing that if we haven't been to a site for a bit (say a day or even half a day), the first load can take 10 seconds or more just to get the first status 200 response from the server. Note this usually is the first load of any page on the site - subsequent page loads tend to be faster (though not always). So it does not seem to be on a page by page basis.

The other day one was so bad (and it was the client that noticed) that Jodo moved it to it's a dedicated app pool. Since then, the site has been super fast every time I test it.

This made me wonder if the insane server response time we've been noticing is related to the shared app pool or perhaps policies on recycling the app pools.

Could someone help me understand what may be causing the extreme server response times (and maybe if this is related to the 503 Service Unavailable's we've gotten lately), and a bit about app pool practices and whether we can just request all sites have their own dedicated app pool?

Thanks!
 
All in dedicated pools would kill things...as no memory would be available to run site. Shared pools are not bad, unless they have something that makes problems.

Dedicated app pools many times we get the same issue you are talking about no hits.

the ASP.NET elay on first page load is just the way asp.net works for non precompiled apps, even on an empty server the first page load takes 5-20 seconds depending on what its generating, but each pool recycle makes it regenerate again. Keepalives can do good work to keep them in cache and fast, in shared or dedicated app pools
 
So it sounds like the issue is the app pool may be recycled several times per day? I can be working on a site and notice the delay 2, 3 or more times in a day - at a minimum I notice it every morning when I first load a site. How often are the app pools recycled? Has there been some change in say the last 1-2 months - because I don't remember noticing it until recently.
 
Sorry didn't see it give the 'updated topic' color so didn't check it. Cookie issue probably...

The time between recycles varies in some very specific cases as low as 90 minutes, and many around 1200

The default is 1740 (29 hours), but we typically lower it from this to the 900-1200 range which means at least a daily refresh that takes longer. On 2003 many were in the 400-760 range. We try to offset them so that they don't all happen on all app pools at the same time each day, as that would make the issue even worse on how long to load, because the requests would stack up more (like a reboot essentially, which can take about 5-8 minutes to clear up the queue of .net compiles when we need to reboot)
90 minutes would be set only some some cases with classic ASP on both 2003 and 2008 really where it is having some issue and crashing a lot, and need it to have a system level recycle before hitting failure counters that make the pool stop, this wouldn't be set on a shared pool or even a dedicated app pool without a specific reason and purpose behind the short recycle time.
 
Back
Top