Friday, 03 April 2009

Optimize startup time in ASP.NET

By: Per Bjurström

  • Average rating:
  • Number of votes: 0
  • Views: 3926

Microsoft published a new knowledge base article on April 1st and its not a joke:

FIX: You experience very slow performance on an initial request to an ASP.NET Web site after you change the App_Code folder, the bin folder, or the Global.asax file

I installed the fix and it seem to cut down 50% of the startup time when I recompile my project. Try it out yourself and let me know if it helps.

The magic switch is optimizeCompilations=”true”.

“When it is turned on, the compilation takes a less conservative approach. If you only change the App_Code folder, the bin folder, or the Global.asax file, only the affected files are recompiled. Previously compiled pages are not recompiled.”

   1: <compilation defaultLanguage="c#" debug="true" optimizeCompilations="true">

The Windows Vista version can be downloaded directly from here (even though the title says its for another fix).

Comments

  1. I guess this would also apply to EPiServer 4 projects?

    I'm running XP, and so want to download and install it, but looks like I have to open a support case to get the fix.

    /Steve
  2. As long as you have a .NET 2.0 project which seems to be a requirement.

    You can contact Microsoft Support and ask them to mail you the fix without opening a case, I've done that with other fixes and it has not been a problem.

  3. If you don't feel like contacting microsoft to get this fix for Windows XP you can download it here: http://blog.sallarp.com/kb961884-windowsxp-download/
  4. I was unable to find this hotfix for Windows 7, and I'm not sure it is even applicable or neccessary. I added the attribute to my web.config, and my site still works. It is a relatively fresh windows install, so I can't say if the performance it better, but it can't hurt (I hope).



  5. I am running IIS on Windows Vista x64. I tried throwing the property into my web.config WITHOUT grabbing any hotfix to see what happens, and it worked! My load times improved tremendously. I can modify code in App_Code or dependent projects, and the load time of the website is very quick, less than one second compared to 7 seconds previously.
  6. Oops, I meant to say IIS 7.

    And I forgot to say thanks to Per Bjurström for the tip!
  7. Cool Tyler, I guess they included it in some update then.

About the blogger

Per Bjurström EPiServer employee
EPiServer Stockholm
Contributing Citizen
I'm a senior developer and architect on the development team in Stockholm and has been with the company since 1999. I live on Södermalm in Stockholm. My main focus areas are new technologies and how we can use them in our product development.

FeedBackbutton image