Close

November 13, 2012

How to identify bottlenecks in Performance Testing?

HP Performance Center 12

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.

Bottlenecks in Performance Testing using LoadRunner Diagnostics Transaction Performance Summary qainsights

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.

Bottlenecks in Performance Testing using LoadRunner Diagnostics Average Transaction Response Time qainsights

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 CycleLoad 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 NaveenKumar Namachivayam

Hi there! is a passionate and experienced Performance Test Analyst based in Chicago, USA with skill sets in Manual Testing, Test Automation, Performance Testing, and Test Estimation. He loves to learn and experiment new trends and models in Software Testing. Please stop by at his personal blogs: Excel Blog, DealsBrook, NaveenKumarN.in, and Affiliate Insights blog and Software Testing Memes.

4 Comments on “How to identify bottlenecks in Performance Testing?

Sajid
November 15, 2012 at 1:04 pm

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
NaveenKumar
November 15, 2012 at 4:06 pm

Sure Sajid! I will respond to your query in the form of post 🙂

Reply
Nassir
November 3, 2014 at 11:11 am

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
rupam
April 11, 2016 at 12:09 pm

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 Reply

Your email address will not be published. Required fields are marked *