Understanding QPS, TPS, Concurrency, Throughput, and Related Performance Metrics
This article explains the definitions and differences of QPS and TPS, describes concurrency and throughput concepts, introduces related metrics such as PV, UV, DAU, MAU, and outlines key considerations for system performance testing and capacity planning.
1. QPS
QPS (Queries Per Second) measures how many queries a server can respond to each second, reflecting the maximum throughput capability of a specific query server.
2. TPS
TPS (Transactions Per Second) counts the number of complete transactions per second, where a transaction includes a client request, server processing, and response.
3. Difference between QPS and TPS
TPS counts each complete request‑response cycle, while QPS can count multiple server requests generated by a single page view.
Example: a page request may generate three server queries, resulting in one TPS but three QPS.
4. Concurrency
Concurrency (or concurrency level) indicates the number of requests a system can handle simultaneously, reflecting its load capacity.
5. Throughput
Throughput is the amount of work a system processes per unit of time; both TPS and QPS are common quantitative indicators of throughput.
System Throughput Factors
The system’s throughput is closely related to CPU consumption per request, external interfaces, I/O, etc.
Higher CPU cost or slower I/O reduces throughput, while lower cost increases it.
Key Parameters
QPS/TPS, concurrency, and response time are the primary parameters.
Formula: QPS (or TPS) = concurrency / average response time.
Relationship
When either concurrency or response time reaches its limit, overall throughput cannot increase further and may even decline due to overload.
6. PV
PV (Page View) counts each page load or refresh as a separate view.
7. UV
UV (Unique Visitor) counts distinct users visiting within a day, usually derived by deduplicating logs.
8. DAU
DAU (Daily Active Users) measures the number of unique users who interact with a service in a single day.
9. MAU
MAU (Monthly Active Users) measures the number of unique users over a month.
10. System Throughput Evaluation
When designing a system, consider CPU, I/O, external service latency, and estimate performance accordingly.
Typical evaluation involves correlating peak TPS with daily PV to estimate daily traffic capacity.
Methods include identifying the system’s maximum TPS and daily PV, then using stress testing or experience to predict overall capacity.
11. Basic Concepts and Formulas for Software Performance Testing
Performance testing focuses on response time, resource utilization, scalability, maximum concurrent users, potential bottlenecks, and 24/7 availability.
From a developer’s perspective, assess architecture, database design, code efficiency, memory usage, thread synchronization, and resource contention.
Laravel Tech Community
Specializing in Laravel development, we continuously publish fresh content and grow alongside the elegant, stable Laravel framework.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.