Response time & throughput cơ bản
🎯 Mục tiêu học: hiểu 2 chỉ số nền tảng của performance testing, và vì sao đo bằng percentile chính xác hơn nhiều so với đo giá trị trung bình.
🔗 Liên hệ với Chương 2: khác 6 nhóm còn lại trong khung Mục 2.1 (vốn kiểm tra 1 request đơn lẻ), Chương 5 nhìn ở góc độ khác — hệ thống phản ứng ra sao dưới TẢI và khi nhiều request chạy ĐỒNG THỜI, cắt ngang qua mọi HTTP method chứ không riêng 1 nhóm. Riêng Mục 5.3-5.4 mở rộng trực tiếp từ Nhóm 5 — Đặc thù ngữ nghĩa method (idempotent) đã học ở Mục 2.1, xét dưới điều kiện tải cao.
2 chỉ số cốt lõi
Response time (thời gian phản hồi) — khoảng thời gian từ lúc gửi request tới lúc nhận đủ response, tính cho 1 request.
Throughput (thông lượng) — số lượng request hệ thống xử lý được trong 1 đơn vị thời gian, thường đo bằng RPS (requests/second) hoặc TPS (transactions/second).
Vì sao phải đo bằng percentile, không phải trung bình
| Chỉ số | Ý nghĩa | Vấn đề nếu chỉ nhìn số này |
|---|---|---|
| Trung bình (average) | Cộng tất cả chia số lượng | Bị 'kéo lệch' bởi vài request cực nhanh, che giấu việc 1 nhóm nhỏ người dùng chờ rất lâu |
| p50 (median) | 50% request nhanh hơn giá trị này | Chỉ phản ánh trải nghiệm 'người dùng điển hình', bỏ qua nhóm gặp chậm |
| p95 | 95% request nhanh hơn giá trị này | Thường dùng làm SLA — phản ánh gần đúng trải nghiệm của đa số, kể cả nhóm chậm hơn |
| p99 | 99% request nhanh hơn giá trị này | Phản ánh nhóm người dùng gặp trải nghiệm tệ nhất — quan trọng với hệ thống quy mô lớn |
Ví dụ: 100 request có response time trung bình 200ms nghe rất tốt — nhưng nếu p99 là 8000ms, nghĩa là cứ 100 người dùng thì có 1 người phải chờ 8 giây. Con số trung bình đã che giấu hoàn toàn vấn đề này.
📌 Ghi nhớ
Khi báo cáo kết quả performance test, luôn báo cáo p95/p99 cùng với trung bình — và luôn thống nhất trước với team ngưỡng SLA chấp nhận được (vd "p95 < 500ms") trước khi bắt đầu test, tránh tranh cãi sau khi có số liệu.
📖 Thuật ngữ Anh–Việt (mục này)
Đề thi dùng thuật ngữ tiếng Anh — nhớ đúng cụm bên trái. Bấm 🔊 để nghe từng từ, hoặc "Đọc tất cả" để nghe lần lượt Anh → (vài giây) → Việt.
| Thuật ngữ (EN) | Nghĩa & ghi nhớ nhanh |
|---|---|
| Response time | Thời gian phản hồi của 1 request, từ lúc gửi tới lúc nhận đủ response |
| Throughput | Thông lượng — số request/giao dịch xử lý được trong 1 đơn vị thời gian |
| RPS / TPS | Requests per second / Transactions per second — đơn vị đo throughput phổ biến |
| Percentile (p95, p99) | Điểm phân vị — giá trị mà N% số request nằm dưới ngưỡng đó |
| SLA | Service Level Agreement — cam kết về mức độ dịch vụ (thường gồm ngưỡng response time) |
📎 Nội dung do maiqai.com biên soạn dựa trên thực hành phổ biến khi đo hiệu năng API, không sao chép nguyên văn từ nguồn nào.