Performance testing-common performance efficiency failure modes and causes (5)

There are many different performance efficiency failure modes that can be discovered during dynamic testing. Here are some examples of common failures (including system crashes) and their typical causes.

1. Slow response at all load levels

In some cases, system response is unacceptably slow for users, regardless of load. This can be caused by underlying performance issues, including but not limited to poor database design or implementation, network latency, and other background load issues . These issues can be found in functional and usability tests, not just in performance tests, so test analysts should pay close attention to and report them.

2. Slow response under medium and high loads

In some cases, even if the load is well within the normal, expected and allowed range, the system response speed will still decrease as the load changes from moderate to heavy, which is unacceptable. The cause could be underlying defects such as saturation of one or more resources and changes in background load.

3. Over time, response decreases

In some cases, system responsiveness may gradually or rapidly decrease over time. Root causes include memory leaks, increased disk fragmentation, increased network load over time, file storage growth, and unexpected database storage growth.

4. Inadequate or rough error handling under high load or ultra-high load

In some cases, the system's responsiveness is acceptable, but its error handling performance efficiency decreases under high loads and beyond extreme load levels.

Potential system flaws that lead to this include insufficient resource pools, queues and stacks that are too small, and timeouts set too quickly.

Specific examples of the common potential pitfalls listed above are as follows.

❑The web application that provides company service information does not respond to user requests within 7 seconds (7 seconds is the general industry experience), that is, the system cannot achieve the required performance efficiency under specific load conditions.

❑When there is a sudden large number of user requests (such as ticket sales for major sporting events) the system crashes or cannot respond to user input because the system does not have enough capacity to handle user requests.

❑When users submit requests for large amounts of data (such as publishing a large and important report on a website for download), system response will decrease significantly because the system does not have enough capacity to process the data.

❑The system cannot complete the batch processing that should be completed before online processing, or the execution of the batch processing cannot be completed within the allowed time period. ❑When parallel processes have huge demands on dynamic memory and the memory cannot be released in time, the real-time system will run out of memory. This may be because the system has insufficient memory capacity or the processing priority of memory requests is not set properly.

❑If real-time system component A, which provides input to real-time system component B, cannot calculate updates at the required rate, the entire system may fail to respond in time. Faced with this situation, the code module in component A must be evaluated and modified, i.e., performance analyzed, to ensure that the required update rate can be achieved.

This article "Enterprise Performance Testing"

Guess you like

Origin blog.csdn.net/seanyang_/article/details/132922514