The goal of performance analysis in any Java-based application is to determine which parts of a program require optimization to increase their execution speed or lower their memory usage. Performance analysis is used for the following things:
Pro-active bottleneck identification
Application profiling
Fixing scenarios that are not meeting requirements/SLAs
Based on performance analysis, bottlenecks can be identified and performance tuning can be carried out.
In this chapter, we will discuss the following topics:
Performance bottlenecks in applications and key challenges posed by these
Solutions for resolving bottlenecks, for example, object reuse, delayed initiation, and so on
Performance tuning tools for Java applications, for example, Netprofiler