This is a method of understanding the pattern of the graphs by analysing and comparing them and then conclude the result. This method consists of two parts:
- Pattern Analysis
- Pattern Comparison
The best example to understand the Pattern Method is a Soak Test which helps to find out the memory leakage in the application. Soak test or Endurance test involves testing a system with an average load extended over a significant period of time. Here your goal is to discover how the system behaves under sustained use. That is, to ensure that the throughput and/or response times after some long period of sustained activity are as good as or better than at the beginning of the test. Generally, the duration of Endurance test is 6-10 hours, but do you think any application runs only 6-8 hours in production and then we switch-off the application (like a light bulb in the house), off-course NO. So, how 6 to 8 hours test help us to predict whether an application has any bottleneck or not? The answer is ‘Pattern Analysis’.
A performance tester analyses the pattern of the graph and concludes the sustenance of the application. This is the first part of the Pattern Method. Under this part, you have to understand the pattern of the response time, throughput, CPU utilization, Memory Utilization, GC graphs. Any uneven pattern or spike lead to an investigation.
Now, the second part is “Pattern Comparison”. In this method, we compare the performance issues in the system under analysis with commonly seen issues and its causes in other systems. There are so many common performance issues like server configuration, load balancer issues resulting in regular spikes in the response time or the huge spike in response time in a stable system due to web server cache refreshes and even gradual increase in response time due to memory leaks. The basic is to compare the performance issues with commonly seen issues and find out the root cause. In this way, it is easy and quick to resolve the identified common issues.
Example of Pattern Method:
To understand this method in detail, let’s have a look at a test result of Java-based Order Management System at 1000 orders per hour for 24 hours. Submit Order transaction is taking a few second response time at the start of the test, but showed an increasing trend in response time and finally reached 70 second response time towards the end of the test. This is a clear indication of performance degradation over time which we can see in the average transaction response time graph. Using the Pattern method here, the root cause of the issue could be memory shortage over time. Upon analysing the java memory usage, it confirmed that the used memory increased from 90 MB to 1 GB. This was due to the memory leak in the system.
You may be interested: