There are two ways to eliminate a bottleneck:
When the server appears to have slow response times, you might try to install a faster processor without realizing that the disk subsystem is the actual bottleneck. By doing this, you can improve response times somewhat because the disk is faster. However, the capacity of the system does not change; the bottleneck remains.
The next illustration shows what happens if you fail to identify the bottleneck correctly or when you improve the wrong resource. The capacity of the system does not change at all. At load levels approaching saturation, response times do not improve.
The following illustration shows what happens when a bottleneck is correctly identified and relieved. Not only are response times improved at light loads, but the saturation point moves further out. Users experience acceptable response times except at higher load levels. You can see that there is still a bottleneck in the system, but the capacity might be high enough to provide acceptable performance. If not, the new bottleneck must be identified and resolved.