Chapter 10. Case Study: Applying API Profiling to Solving Software Performance and Scalability Challenges

 

Plato is my friendAristotle is my friendbut my greatest friend is truth.

 
 --Sir Isaac Newton

API profiling is the most efficient approach to optimizing and tuning the performance and scalability of a software system. It provides such vital information for an API as how many times it was called, how long on average the calls took, and whether it's a hot API or not in terms of its elapsed time percentage relative to the total execution time of the program.

Without API profiling, it's hard for the software developers to gain inside knowledge about the performance of each individual API of a software program. Without being equipped with an API profiling tool, software developers would have to speculate, which can rarely lead to fruitful outcomes toward solving software performance and scalability issues. API profiling is as important for software developers to identify and fix software performance and scalability defects as the blood tests and X-ray examinations for medical doctors to diagnose and cure diseases of their patients.

In order to efficiently optimize and tune the performance and scalability of a software system, every software development team should have an API profiling tool in place. In general, there are three sources of API profiling tools:

  • Commercial tools such as VTune™ from Intel™, Quantify™ from IBM, and Vantage Analyzer for J2EE™ from Compuware™, and so on. ...

Get Software Performance and Scalability: A Quantitative Approach now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.