Hello Andrew,
Thank you for posting here.
From your description, I understand you've developed an ASP.NET 2.0 site
and after deploy it(precompiled) to the webserver, you found it will always
suffer slow performance(due to dynamic compilation) on the firtst requests,
correct?
As for the procompilation, are you doing the precompiling through "Publish
WebSite" option in visual studio 2005? If so, have you choosed to make the
website "updatable" in the publish website's settings? By default, the
publish website will make the website updatable, that means the web pages
and usercontrols' aspx/ascx template file is not precompiled and remain
their original contents. Therefore, at runtime, the first time a page or
usercontrol is requested, the ASP.NET runtime still need to dynamically
compile it , this make the first time load expensive.
If you do not quite care the ability to edit the aspx or ascx file, you can
just precompile the website with "updatable" option unchecked. Thus, all
the aspx /ascx template file are also precompiled(all the assemblies in bin
dir) and at runtime, the ASP.NET runtime can eliminate the first time
dynamic compilation overhead. You can have a test on your side to see
whether this helps.
As for the IIS "recycle worker process" or "shut down worker process after
being idle" for a certain period, these settings are just for the server's
performance consideration. It is unnecessary to keep a worker process in
memory if it no longer processing any incoming requests. Surely, if you
feel that it is necessary to make a certain ASP.NET worker process always
keeping alive regardless of the idle time, you can create an separate
Application Pool in IIS and uncheck the 'Shutdown worker process after
being idle' option.
Hope this helps some. If there is anything unclear or any other information
you want to know, please feel free to post here.
Sincerely,
Steven Cheng
Microsoft MSDN Online Support Lead
==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscripti...ult.aspx#notif
ications.
Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial
response from the community or a Microsoft Support Engineer within 1
business day is
acceptable. Please note that each follow up response may take approximately
2 business days
as the support professional working with you may need further investigation
to reach the
most efficient resolution. The offering is not appropriate for situations
that require
urgent, real-time or phone-based interactions or complex project analysis
and dump analysis
issues. Issues of this nature are best handled working with a dedicated
Microsoft Support
Engineer by contacting Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscripti...t/default.aspx.
==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.