Mobile app version of vmapp.org
Login or Join
Mendez628

: What can you do to speed up IIS 7 web sites? Turn on compression and you'll see immediate performance improvements, likewise if you enable caching for complex web apps. What other configuration

@Mendez628

Posted in: #Iis7 #Performance

Turn on compression and you'll see immediate performance improvements, likewise if you enable caching for complex web apps.

What other configuration options you can change to improve performance? do you have "performance checklist" of things to set when you get a new server?

I'm asking about IIS 7 or later (because all my current servers are IIS7)

10.04% popularity Vote Up Vote Down


Login to follow query

More posts by @Mendez628

4 Comments

Sorted by latest first Latest Oldest Best

 

@Odierno851

Jesper's tips above are excellent suggestions for speeding up static web pages.

If you are running an ASP.NET application there are also things you can do if your web site is having performance issues due to load:


Monitor your server. ASP.NET publishes lots of counters that can be monitored in PerfMon.exe. The Global Request Queue counter will show you if any requests are being queued. This number should always be 0.
Optimize any calls to external resources such as databases and file systems. Long running requests tie up threads and prevent incoming requests from being served
If you have long running calls to external resources, consider making those asynchronous. This transfers the request to a separate thread pool and returns the original thread to the pool to serve new requests
Increase the size of the thread pool for older versions of .NET. This setting can be found in the machine.config
Configure the web garden option in your IIS application pool to use more than one worker process (Maximum Worker Processes option in IIS7 Advanced Settings). Play with different settings to see what best suits your environment. Multi-core machines will be able to handle mutiple worker processes better.
In a virtual machine, don't assign too many cores to the server, as this can cause allocation issues on your host.
If you have tried all of these and you still see issues due to load, consider clustering your server. Windows Server has Network Load Balancing built in, which allows you to configure a small web farm without the need for an expensive hardware load balancer. IIS7 also includes the Web Farm Framework, which achieves the same thing using Application Request Routing (ARR). It also handles server provisioning.


A quick web search on any of these issues will return lots of good information.

10% popularity Vote Up Vote Down


 

@XinRu657

We implement ARR module in IIS7, so we make a webFarm, ARR can cache your request on disk and increase performance, for us, that make a big difference.

In the html page you can also use multi sub domain for your media, example :

js.yourdomain.com
img.yourdomain.com
css.yourdomain.com

etc .. Browser le ie, and i think other download simultanious 3 connexion by sub domain.

10% popularity Vote Up Vote Down


 

@Reiling115

Magic settings are normally site specific. You'll need to monitor what's going on in order to find the right questions of what to change in IIS7.

What part of the performance chain is weakest?

or

What can you do to gain granular visibility in an accessible fashion?

Jesper Mortensen is absolutely right Steve's two books are superb reading and accounted for a recent 5.5 second to 1.8 second speed boost (webpagetest) on a site we maintain. Stabilising the whole system based on logs helped us to keep the delivery stable across runs and ramp up at peak (over 50% of this was at the OS level). None of this could have been done in a 2 day time frame without monitoring at every level.

There often isn't a check-list for every site beyond Steve Sounders work, you've got to know the problem before looking for the solution.

10% popularity Vote Up Vote Down


 

@Becky754

IIS7+ is actually pretty darn' fast. There isn't much you can do to speed up IIS; in general you'll optimize on the HTML, JS, Images, CSS, HTTP, HTTP headers, and possibly webapp code (C# etc). These issues are cross-platform. The user interface is of course different between Apache and IIS, but the knowledge is much the same.

Steve Souders literally wrote the book on how to make websites go faster. It's a quick, easy read. Here is a free summary / checklist as you requested, and you'll find a talk about this on YUI Theater (not the greatest presentation).

For those not clicking on links, the original 14 rules (which can also be found on Yahoo!'s developer network) are:


Make Fewer HTTP Requests
Use a Content Delivery Network
Add an Expires Header
Gzip Components
Put Stylesheets at the Top
Put Scripts at the Bottom
Avoid CSS Expressions
Make JavaScript and CSS External
Reduce DNS Lookups
Minify JavaScript
Avoid Redirects
Remove Duplicate Scripts
Configure ETags
Make AJAX Cacheable


Steve's second book is also good, but with more emphasis on specific Javascript and browser behavior. The first book is more universally applicable, and the tweaks given in the first book have the biggest impact.

10% popularity Vote Up Vote Down


Back to top | Use Dark Theme