"A general approach to performance testing and analysis is: Monitor the basics: CPU, Memory, I/O ; Understand the performance and scalability; Identify the bottlenecks additing monitoring, as necessary; Create hypotheses for root cause of performance and/or scalability problems; Identify fixes to the hypotheses, or add more monitoring; Test the hypotheses and the fixes."