Free Trial

Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.


  • Create BookmarkCreate Bookmark
  • Create Note or TagCreate Note or Tag
  • DownloadDownload
  • PrintPrint
Share this Page URL
Help

Chapter 5. Java Application Profiling

5. Java Application Profiling

Chapter 2, “Operating System Performance Monitoring,” made a clear distinction between the activities of performance monitoring, performance profiling, and performance tuning. Before jumping into the details of what is involved in performance profiling a Java application, it is worthy to revisit the performance profiling definition. Performance profiling is an activity of collecting performance data from an operating or running application that may be intrusive on application performance responsiveness or throughput. Performance profiling tends to be a reactive type of activity, or an activity in response to a stakeholder reporting a performance issue, and usually has a narrower focus than performance monitoring. Profiling is rarely done in production environments. Rather it is typically done in qualification, testing, or development environments and is often an act that follows a monitoring activity that indicates some kind of performance issue.

As suggested in Chapter 1, “Strategies, Approaches, and Methodologies,” performance testing, including profiling, should be an integral part of the software development process. When performance testing is not an integral part of the software development process, profiling activities are usually performed as the result of a stakeholder complaining that performance of the application is not as he or she desires. For applications having a strong emphasis on meeting performance and scalability requirements, constructing prototypes of areas identified as being at performance risk and profiling them are ideally done early in the software development process to mitigate risk. This activity offers the opportunity to entertain alternative architectures, designs, or implementations at a stage where it is much less costly to make changes than later in the software development process.


  

You are currently reading a PREVIEW of this book.

                                                                                        

Get instant access to over
$1 million worth of books and videos.

  

Start a Free Trial


  
  • Safari Books Online
  • Create BookmarkCreate Bookmark
  • Create Note or TagCreate Note or Tag
  • DownloadDownload
  • PrintPrint