Cân bằng tải
Round-robin chia 60 request thành 20/20/20 — đều theo lượt. Nhưng least-connections chỉ đưa backend chậm 2 request, dồn phần còn lại cho hai backend rảnh. Đo thật.
Round-robin chia 60 request thành 20/20/20 — đều theo lượt. Nhưng least-connections chỉ đưa backend chậm 2 request, dồn phần còn lại cho hai backend rảnh. Đo thật.
Kích thước bể kết nối là mức song song của client: pool 1 chạy 30 request mất 2581 ms, pool 30 chỉ 146 ms. Nhưng lợi ích dừng ở đúng sức backend. Đo thật.
Cùng một bản ghi, protobuf nhỏ hơn JSON ~2 lần và mã hóa nhanh hơn 7 lần — nhưng không phải 'nhỏ hơn chục lần' như đồn, và gzip còn làm phình payload nhỏ. Đo thật.
Giữ 3000 WebSocket mở tốn 45,8 KB mỗi kết nối trên máy chủ Python — nhưng 3000 socket TCP trần chỉ tốn 0,1 KB. Cái đắt là runtime, không phải kết nối. Đo thật.
Một trang 40 tài nguyên nhỏ: qua 10 mbit là chững ~520ms, nhưng RTT kéo thời gian tăng tuyến tính. Một file 5MB thì ngược lại. Cái nào giới hạn tùy dạng tải. Đo thật.
Thêm 1% mất gói: p50 vẫn 28ms y như cũ, nhưng p99 nhảy từ 32ms lên 264ms. Mất gói không kéo trung vị — nó dựng một vách đứng ở cái đuôi. Đo thật bằng netem.