Share via


Learned something new on IIS Compression

Dynamics CRM is a web app, therefore it leverages IIS. Usually IIS compression is enabled by default since we would like to reduce bandwidth usage and also reduce the page load times. The .aspx files sent by the server to the browser is highly compressed by algorithms such as gzip. IIS 7+ offers the ability to cache not only compressed static files, it also compressed dynamic files. Modern browsers have the ability to decompress the incoming files.

IIS Compression uses the CPU to compress the files, I’ve learned that compression is automatically switch OFF when CPU usage is above 90% for Dynamic file and 100% for Static files. It will automatically switch back ON when the CPU drops back to 50% for both Dynamic and Static files. You can modify these limits in the applicationHost.config file which is normally in the C:\Windows\System32\inetsrv\config folder.

I want to bring this to everyone’s attention because usually during CRM performance testing, we often push the server CPUs to their limits. Please look at your CPU usage on your front end servers to make sure that they don’t hit the IIS compression limits and you will have a more accurate performance test.

Comments

  • Anonymous
    March 26, 2014
    Good to know this critical Performance counter stuff.

  • Anonymous
    April 01, 2014
    Hi there,  Did Microsoft do any benchmarking to show how tweaking the applicationHost.config file under various conditions could yield better performance.  For example would changing the parameter to switch off compression for dynamic files when CPU hit's 75%.  What sort of performance degredation or improvement does one see?  Is there any info that talks about this in greater detail?  Thx for sharing.