NOTE

2.1 Performance Testing

Definition of performance testing and throughput, concurrency, response time, resource utilization, and error rate.

Testing & PerformanceCreated Updated 1 min readhistorical

This is a historical learning note and may contain outdated or incomplete understanding.

1. What Is Performance Testing

  • How the system operates under different loads.

2. Performance Testing Metrics

2.1. Throughput

  • Throughput: the number of client requests processed per unit of time.
  • Throughput ≈ concurrency / average response time (when the system is in a steady state and the definitions are consistent).

2.1.1. TPS

  • Transactions Per Second: the number of transactions per second.

2.1.2. QPS

  • Query Per Second: the number of queries per second.

2.2. Concurrency

  • Concurrent users: the number of users submitting requests to the system at the same physical moment.
  • Online users: the number of users who access the system during a period of time; these users are not necessarily submitting requests at the same time.
  • System users: the total number of registered users in the system.

2.3. Response Time

  • Response time is the time from when the user initiates a request from the client until the client receives the result returned by the server.
  • Response time = network round-trip time + server processing time.

2.4. Resource Utilization

  • Resource utilization: how system resources are being used.
  • Resource utilization = resource usage / total available resources * 100%.
  • Reference utilization values from the original note (not universal thresholds):
    • CPU no higher than 80%.
    • Memory no higher than 80%.
    • Disk no higher than 90%.

2.5. Error Rate

  • Error rate: the number of failed requests.
  • Error rate = failed transactions / total transactions * 100%.
  • Reference error rate from the original note (not a universal threshold):
    • Below 0.5%.
    • Error types depend on the specific system and failure mode.

3. References

Discussion

Sign in with GitHub to comment. Discussions are stored as GitHub Issues.View on GitHub