Breathe In, Breathe Out – 4 Step Process
We all know that performance testing can be frustrating.
So many things can go wrong, and many of them are hard to find.
No worries. Take a deep breath.
Breathe in and Breathe out.
Become one with your favorite performance test tool and follow these four steps to experience testing nirvana.
Read on!
“Do not dwell in the past, do not dream of the future, concentrate the mind on the present moment” – Buddha
Step 1: Run & Measure it
Fire off your tests and make sure you're getting repeatable results. NEVER go by the results of just one test.
Going by the results of one test is like watching just one-quarter of a football game and thinking you know who won the game—bad idea.
You want to run at least three sets of the same test without changes before comparing results.
After running the same test many times, look at the results and ensure that each run had approximately the same results.
If they are not roughly the same, stop and find the cause. This is key because if your results have more than a 5% difference between them and you make a tuning change, you wouldn't be able to determine whether the change helped since your baseline is unpredictable to start with.
For my first round of testing Nirvana, I usually start with a brief, 15 minutes, one & three-user tests.
Step 2: Confirm It
After the test runs are finished, you'll want to see the results and confirm there's nothing funky going on.
That means no errors appear in the test tool or log files, and all of your performance counters are working with no odd behavior.
Some examples of odd performance behavior could be:
- High CPU
- Large processor queue lengths
- Low throughput
- High Heap utilization
- High Response Time
- Counters that are trending upward or downward in multiple runs of the exact test
Step 3: Examine It
Gather all your test results and consolidate them into one location, such as Excel or a test tools reporting system.
Then check:
- Are you meeting your performance goals?
- Are there any glaring issues that need to be reported?
- Is any weird behavior showing up?
Find predictable patterns in your info.
Step 4: Tune It
Did you find a performance issue?
If so, it's time to make a change and ensure that it improves performance.
Before changing code and switching settings, confirm that it's not a hardware issue. Also — make sure that you only change one thing at a time.
If you start changing multiple elements, you'll have no way of knowing which tuning adjustment actually helped to improve performance.
Pro tip: repeat the 4 steps as needed, and rest in the peace of knowing. You've now found performance bliss.
I Am Awake!
When the Buddha began to wonder about India shortly after his enlightenment, he encountered several men who recognized him to be a very extraordinary being.
They asked him, “Are you a god?”
“No,” he replied.
“Are you a reincarnation of god?”
“No,” he replied.
“Are you a wizard, then?”
“No.”
“Well, are you a man?”
“No.”
“Well, are you a testing guru?”
“No.”
“So what are you?” they asked, being very perplexed.
“I am awake.”
What is Latency, Can you please explain
Response Time:29 ms
Latency:10 ms
Hits/sec:180.87
Throughput/sec:180.8
Size (KB/sec):26546.96
these are the results of a test.
Can you please differentiate between throughput vs latency
This blog has a pretty good explanation of the differences: https://nirajrules.wordpress.com/2009/09/17/measuring-performance-response-vs-latency-vs-throughput-vs-load-vs-scalability-vs-stress-vs-robustness/
This blog has a pretty good explanation of the differences: https://nirajrules.wordpress.com/2009/09/17/measuring-performance-response-vs-latency-vs-throughput-vs-load-vs-scalability-vs-stress-vs-robustness/