Practical mod_perl / HTML Book /



previous page: 8.2.6. Getting a Fault-Tolerant CPU
  
page up: HTML Version of the book
  
next page: 8.2.8. Solving Hardware Requirement Conflicts

8.2.7. Detecting and Avoiding Bottlenecks


You might use the most expensive components but still get bad performance. Why? Let me introduce an annoying word: bottleneck.

A machine is an aggregate of many components. Almost any one of them may become a bottleneck. If you have a fast processor but a small amount of RAM, the RAM will probably be the bottleneck. The processor will be underutilized, and it will often be waiting for the kernel to swap the memory pages in and out, because memory is too small to hold the busiest pages.

If you have a lot of memory, a fast processor, and a fast disk, but a slow disk controller, the disk controller will be the bottleneck. The performance will still be bad, and you will have wasted money.

A slow NIC can cause a bottleneck as well and make the whole service run slowly. This is a most important component, since web servers are much more often network-bound than they are disk-bound (i.e., they have more network traffic than disk utilization).

 

Continue to:

  • prev: 8.2.6. Getting a Fault-Tolerant CPU
  • Table of Contents
  • next: 8.2.8. Solving Hardware Requirement Conflicts







TOP
previous page: 8.2.6. Getting a Fault-Tolerant CPU
  
page up: HTML Version of the book
  
next page: 8.2.8. Solving Hardware Requirement Conflicts


Menu

  • HTML Book
  • PDF Book
  • Download Code
  • Table of Contents
  • Errata
  • mod_perl2 User's Guide
  • Sitemap

Search


Add to Google




Creative Commons License


Written by
Eric Cholet (Logilune) and
Stas Bekman (StasoSphere & Free Books).


[ Privacy Policy | Terms of Use | About Us | Search ]

© 2007 StasoSphere.com