If an application is designed to scale (vertical, or scaling up to faster resources is easy), the question becomes, “How many resources are enough?” Keep in mind that you will start a scaling process to meet performance requirements based upon user demand. To measure performance, you should select meaningful benchmarks:
Support for 5000 simultaneous users
CPU utilization does not exceed 50 percent
Home page loads in 3 seconds or less
All pages load in 5 seconds or less
User submit operations should complete in 10 seconds or less
With your selected benchmarks in place, you can then begin to measure the performance effects of scaling. At first, adding a faster processor, more servers, or increased bandwidth should have measurable system performance improvements. You will reach a point, however, based upon diminishing returns, as shown in FIGURE 19-7, for which adding additional resources does not impact performance. At that point, you should stop scaling.