Learn how to a build a cloud-first strategyRegister Now


IIS Page Load Delay

Posted on 2005-05-06
Medium Priority
Last Modified: 2012-06-21
I have an asp.net website hosted on an win2k3 IIS 6.0 server.  The site only gets a few hits per day, but these hits are very important b/c of the products we are selling.  The site normally loads extremely fast.  But, when the site has not been hit for a while, say 30 minutes, I get a long initial delay of around 10 seconds before the page starts loading.  It seems like IIS goes to sleep after a certain period of inactivity, or that something is being re-cached server side after a certain timeout.

I'm wondering if there is some 'keep alive' setting or something of that nature to combat my 'inital hit delay' problem.  If I can't solve the problem, my workaround is to create a windows application that's only function is to periodically load my website.  Wouldn't that be a hoot!

Also, I'm testing this on a LAN to rule out any internet influence.

Thanks in advance!
Question by:colemaj1
  • 2

Expert Comment

ID: 13948059
Hi colemaj1,
     Are you using Com objects in this?  My guess is yes, and if you are using .Net stuff it may just be related to that in the Component Services Section anyway.

So you will want to go to your Compent Services and then go to Computers, My Computer, COM+ Applications.   Under here you will have many packages.   In these packages items can be set to do things after a certain length of time.  Under the Properties section of each item you can go to the advanced tab, and under there you can either change the idle time length to something much greater or have it never shutdown.    Since you seem to be experiencing a problem after a certain amount of time, that should be the current time in there.  You can also look at those items to see which ones start running when you hit the site.  Make sure that it has timed out first to do that testing though.

     Another possibility is that it is a Web Site setting, but based on what you said I do not think so, this would only affect a machine usually, not everyone.  So you should make sure that it is not just the initial loading of items on to a machine.   So here is what you change under the Web site itself.  Go to its propertied under IIS, and then select the "Web Site" Tab and you will see a Connection Time Out there.  This number can be increased.   Also under  Home Directory Tab and under the configuration button there.  You will see the Options Tab, under there you will see 2 options that can be changed  'Session timeout' and  'ASP Script Time Out'.    These can also be directly in a web page or website configuration file.

Steven Stuart
LVL 34

Accepted Solution

Dave_Dietz earned 1000 total points
ID: 13949436
Initial page load for an ASP.Net page takes some time to compile the page, load assemblies, etc.

The fact that this happens after about 30 minutes is what really makes the difference though.....

In IIS 6.0 Application Pools are set by default to shut down if idle for more than 20 minutes.

Bring up the properties on the Application Pool for your site, look for the 'Shutdown when Idle' setting (second tab if I remember right) and deselect it.

You will still see some slowness for the initial page load but now the worker process won't shut down causing the need to reload the page when the worker process restarts.

Dave Dietz

Author Comment

ID: 13961182
Steven, I tried your suggestions, but it did not solve the problem.  I'm going to try Dave's and see how it goes.

Author Comment

ID: 13962137
Dave, that worked great.  Thanks!

Featured Post

Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Logparser is the smartest tool I have ever used in parsing IIS log files and there are many interesting things I wanted to share with everyone one of the  real-world  scenario from my current project. Let's get started with  scenario - How do w…
If you are a web developer, you would be aware of the <iframe> tag in HTML. The <iframe> stands for inline frame and is used to embed another document within the current HTML document. The embedded document could be even another website.
Is your data getting by on basic protection measures? In today’s climate of debilitating malware and ransomware—like WannaCry—that may not be enough. You need to establish more than basics, like a recovery plan that protects both data and endpoints.…
When cloud platforms entered the scene, users and companies jumped on board to take advantage of the many benefits, like the ability to work and connect with company information from various locations. What many didn't foresee was the increased risk…
Suggested Courses

810 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question