Chapter 6. Case Study II: Queuing Theory Applied to Optimizing and Tuning Software Performance and Scalability
Mathematical reasoning may be regarded rather schematically as the exercise of a combination of two facilities, which we may call intuition and ingenuity. | ||
| --Alan Turing | ||
A software system is unlikely to perform and scale without going through a rigorous performance and scalability engineering process. Such an engineering process typically includes two major activities: optimization and tuning. In the context of the software performance and scalability, optimization refers to the efforts of identifying and eliminating internal inefficient designs and implementations, whereas tuning refers to the efforts of establishing the optimal setting for every possible external configuration parameter. Both optimization and tuning must be incorporated into the development cycles of a software product to help achieve the best possible and predictable performance and scalability.
Software performance and scalability issues must be dealt with both rationally and quantitatively. One must understand that it's not a guessing game. All judgments and decisions must be based on quantitative performance and scalability test data. That's because system bottlenecks and implementation inefficiencies can only be revealed through analyzing quantitative performance and scalability test data, while prescriptions for removing bottlenecks and improving inefficient designs and implementations can only be ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access