0

I am running an ASP.NET 3.5 website on IIS 6 with Server 2003. Whenever I modify any of the ASPX files, any page on the site then takes about 2-3 minutes before it starts to load. Even the smallest modification causes this to happen.

Why is this?

StrattonL
  • 143
  • 6

2 Answers2

0

I believe this is happening because IIS is recompiling your application's modules. You could try pre-compiling your application outside of IIS, which would prevent customer impact.

Eric H
  • 748
  • 4
  • 10
  • I am in the process of developing the site at the moment, and is not in production yet, so frequent changes are necessary. Is there any way to stop if recompiling? – StrattonL Apr 05 '10 at 20:39
  • If you stop it from recompiling, how will your changes have taken effect? – mfinni Apr 05 '10 at 20:44
  • hmm OK, so how do I find out whats taking so long to load? It's only a very basic website. – StrattonL Apr 05 '10 at 21:21
  • Do you have console access to the server? you might wanna try ProcMon or FileMon to see what files and processes are being activated. 2-3 minutes sounds tooo long for a compile of a simple site. I'd look for a network timeout, somewhere. DNS lookup, something like that. Sorry can't be more specific, it's just that 2-3 minutes doesn't smell like compilation latency, to me. – Cheeso Apr 06 '10 at 00:31
  • Yes, I have full RDP access. I've checked process explorer, and the CPU usage is usually around 5-10%, although task manager is reporting 70% or higher all the time, even though there are no processes or services which are using the processing power. Bear in mind it is a vps. I may end up just re-imaging the server. – StrattonL Apr 06 '10 at 12:35
  • Do you have "Show processes for all users" in Task Manager checked? If not, the graph will show 70%, but you would only see the CPU being used under your user id. – Eric H Apr 06 '10 at 19:18
0

I've seen this happen in environments that have the following conditions:

  • the application uses DLLs that are digitally signed (especially third party)
  • the server is behind a firewall, or is unable to resolve external DNS entries (such as the CRL)

Solution:

  1. Open C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet.config
  2. Add the following entry: in the section.
  3. Save it, recycle your worker process.
(if 64-bit, make sure you make the corresponding change under Framework64)

More documentation here

JohnW
  • 501
  • 3
  • 8