How to identify bottlenecks in Performance Testing?

Bottleneck analysis is the most critical phase in Performance Testing Life Cycle. Those who are new to performance testing, they will be very eager to understand how to analyze the results and pinpoint the issues. Apparently, bottleneck analysis and isolate the issues comes by experience and by great analytical skills. In this blog post, we will see how to identify the bottleneck issues by comparing Average Transaction Response Time and Transaction Performance Summary.

Consider we have following three transactions

  1. Login
  2. Book Ticket
  3. Logout

Below is the Transaction Performance Summary graph for the above transactions. In this example, the average response time for Book Ticket transaction is 11 seconds.

Below is the Average Transaction Response Time graph which shows Book Ticket transaction’s response time is very high (15 seconds) at 1st and 7th minute of the scenario.

Our aim is to identify the pinpoint of the issue and to analyze the root cause of high response time for the Book Ticket transaction. To achieve above said objective, we need diagnostics tool, by default HP provides following diagnostics modules: J2EE/.NET, Siebel, Oracle, SAP R/3.

Now, we will see how to isolate the bottleneck issue through diagnostics. Prerequisite is Web Page Diagnostic feature should be enabled before executing the scenario.

Breaking down a transactions helps us to identify the bottleneck issues. Open the Average Transaction Response Time in Analysis, right-click on it and select Web Page Diagnostics for Book Ticket.

Web Page Diagnostics displays breakdown of each page component’s download time of Book Ticket transaction. If the download time is too long, analyze the which measurements is responsible for the lengthy download such as FTP Authentication, DNS Resolution Time, Time to Buffer, Handshaking time etc. If you suspect, there should be any server related problem, check the First Buffer Breakdown option.

It is ideal to check the Network Monitor graphs; it helps to determine what network problem caused the bottlenecks. Also we can identify the bottleneck by using auto-correlating feature. Right-click on Average Transaction Response Time and select Auto Correlate. Mention the time frame for analysis, and the correlate options (which data that you want to correlate) such as SQL Server, Windows Resources, and WebLogic (JMX) etc.

WebLogic (JMX) or JVM Heap Size or Private Bytes might be the cause of slow performance of Book Ticket transaction.

In this way we can pinpoint the issues by analyzing Average Transaction Response Time graph. There are other ways too to determine the cause. In next blog post, we will see about Network and Server Problems.

References: Performance Testing Life Cycle, Load Test WorkLoad Design and Stress Test WorkLoad Design

If you are enjoying my articles, please do subscribe our newsletter for weekly free updates or our feeds.

About the Author

4 thoughts on “How to identify bottlenecks in Performance Testing?”

  1. Thanks a lot for discussing an extremely important topic. The flow of the post is excellent. But can you please discuss other parameters like Connection Time, SSL Handshake Time, FTP Authentication etc. source of problem as you mentioned more First Buffer time will indicate server bottleneck? Furthermore, can you please elaborate a bit Auto-Correlate option? How Auto-Correlate will be used to diagnose the bottleneck.
    I executed a experimental test on a live app and tried above techniques and there was another parameter “Receive” which was consuming most of time in all page components. Any idea of this? Thanks

    Reply
  2. Hello, I am trying to understand it detail and find bottleneck.
    I am using LR for soap_request. Our dev team did monitoring and found that the webservice response from servers are under 1 sec.
    LR is reporting 5 sec.
    After further analysis, i found Web diagnosis data showing that Receive time is taking 3.5 sec.
    First time buffer some as well.
    Can you please provide an explanation to share with dev urgently.
    what will be the receive time.
    first buffer.
    I see that the size is 19k.
    thank you

    Reply
  3. Hi

    I am new to this performance testing.I need to work on performance bottleneck analysis.Can you refer me any books or can you share your ideas how i can enrich myself.

    Reply

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Hamster - Launch JMeter Recent Test Plans SwiftlyDownload for free
+
Share via
Copy link