SIGN UP MEMBER LOGIN:    
ARTICLE

Faster Performance of Deployed ASP.NET Sites

Posted by Tanima Articles | Coding Best Practices May 14, 2009
Here are some tips for making your deployed ASP.NET website run faster.
Reader Level:

Few Tips to ensure your deployed ASP.Net always runs with the best possible performance and no security information leakages.


1) In Machine.config introduce the following( if not already there)-

  Machine.config:   

  • Introduce-

     <system.net>
    <connectionManagement>
      <add address="*" maxconnection="100" />
    </connectionManagement>
  </system.net>


  • Modify :

   <processModel autoConfig="true"/> 

     TO:

    <processModel autoConfig="false"

                       maxIoThreads="100"
                       minWorkerThreads="40"
                       maxWorkerThreads="40"
                       minIoThreads="30" />



//--Above would be specific to your Web Server's Configuration. This was suitable for my requirement


  •  Modify : In Green

<section name="deployment" type="System.Web.Configuration.DeploymentSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineOnly"/>


    TO:  to Red below

<section name="deployment" type="System.Web.Configuration.DeploymentSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineToApplication"/>



2) In  Web.config do the following


A) Under <system.web> key Introduce :

<deployment retail="true"/>

 

This can be done only after  allowDefinition="MachineOnly"    inside Deployment key has been set in Machine.config- SEE ABOVE)


B) Modify :

    debug =false , i.e.

<compilation debug="false" strict="false" explicit="true">


2)  Cache expiration-HTTP Headers

  

In IIS- Select your website, Right click any static folder inside your website- example images. Do following:

            Select HTTP Headers

            Enable content expiration

            Set A Value for "Expire after " say 10 (in days)

 

Do this for all the static folders- i.e. whose content does not change very frequently .

 


3)  GZIP- enable -

Lastly is GZIP Compression, which can shrink a site's pages by 70% to 90%. Advantages are  -

  1. Reduced bandwidth
  2. Faster page loads for your visitors. 



Follow these steps to Enable GZIP

    1. Edit on Metabase.xml while the server is active .Its location is -  C:\WINDOWS\system32\inetsrv
    2. Find <IIsCompressionSchema /> section and add the file types that are in your system.  For mine it was js dll aspx html  css exe axd. This will look something like below-


<IIsCompressionScheme    Location ="/LM/W3SVC/Filters/Compression/gzip"
        HcCompressionDll="%windir%\system32\inetsrv\gzip.dll"
        HcCreateFlags="1"
        HcDoDynamicCompression="TRUE"
        HcDoOnDemandCompression="TRUE"
        HcDoStaticCompression="TRUE"
        HcDynamicCompressionLevel="0"
        HcFileExtensions="htm
            html
            txt"
        HcOnDemandCompLevel="10"
        HcPriority="1"
        HcScriptFileExtensions="asp
            dll
            exe
            aspx
            js
            css
            axd"
    >
</IIsCompressionScheme>

 

Please Note the attribute above HcOnDemandCompLevel :- This is the Compression level which is set as 10

Finally Restart IIS.






 

 

Login to add your contents and source code to this article
share this article :
post comment
 
Become a Sponsor
PREMIUM SPONSORS
  • The leading .NET charting control now features PDF, Flash and Silverlight export, visualization of large datasets and more. Deliver true charting functionality to your BI, Scorecard, Presentation or Scientific apps. Download evaluation now.
    Get 2 Months Free of ASP.NET Hosting for Only $4.95/month! Receive FREE MS SQL and MySQL Databases Including ASP.NET 4/3.5, MVC 3.0, Silverlight 4, Windows 2008/IIS 7.0 Plus FREE IIS 7 Modules. Host UNLIMITED ASP.NET Web Sites - Click Here!
Nevron Gauge for SharePoint
Become a Sponsor