IIS7 breaking changes
IIS7 introduced new integrated pipeline model where asp.net pipeline is integrated into IIS which has extensibility and performance benefits. This comes together with some breaking changes to configuration and asp.net.
Disable static compression
IIS7 has static compression turned on by default and dynamic compression turned off by default. My first tip is to disable static compression (website - compression in IIS7 manager).
It can be the problem when you have static XML files on you server for example. XML files become unreadable by XML parsers with IIS7 static compression. Browsers and other 3rd parties will not be able to read them anymore because XML is malformed
Change max concurrent requests per CPU setting
By default IIS7 has a limit of handling 12 concurrent requests per CPU and will queue requests above this limit. If you have some significant web load and many AJAX style requests to your server - this setting maybe very restrictive and it is hard to find out the root of the problem when you server performance is suddenly degraded.
Some relevant info about asp.net thread usage on IIS7 here:
asp.net thread usage on IIS7 and IIS6
Thomas Marquardt advice is to change this default limit. Recommended settings:
"All of this may be a little confusing, but for nearly everyone, my recommendation is that for ASP.NET 2.0 you should use the same settings as the defaults in ASP.NET v4.0; that is, set maxConcurrentRequestsPerCPU = "5000" and maxConcurrentThreadsPerCPU="0".
This is done by adding DWORD MaxConcurrentRequestsPerCPU to the registry under
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ASP.NET\2.0.50727.0
called MaxConcurrentRequestsPerCPU (DWORD). This key doesn't exist by default. Or/and in aspnet.config section which overrides registry setting (also doesn't exist by default) aspnet.config is here on windows 64bit:
%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet.config
You need to add the following section under "configuration" section (here I used default values) - don't forget change maxConcurrentRequestsPerCPU to 5000.
< system.web>
< applicationPool
maxConcurrentRequestsPerCPU="12"
maxConcurrentThreadsPerCPU="0"
requestQueueLimit="5000" />
< /system.web>
Disable offload network enhancements if you have network issues
Different unexplained network issue on your windows 2008 server could be related to TCP Chimney and related "networking enhancements" in windows 2008 and certain hardware vendors when hardware doesn't play well with these enhancements.
Biswarup Ghosh
Kumar_jay99, if this helps please login to Mark As Answer. | Alert Moderator