DevOps 01/09/2026 8 phút

Trần thật của một node Kubernetes không phải RAM mà là con số 110 — node to gấp đôi không cho gấp đôi số pod, và cụm kind báo 62,4 GiB trên một máy chỉ có 15,6

Đo chi phí bên trong một cụm: bao nhiêu tài nguyên biến mất trước khi ứng dụng đầu tiên chạy. kubelet + containerd 207 MB mỗi node cố định; một pod rỗng tốn 0,44 MB. Nhưng con số đảo ngược trực giác nhất là trần 110 pod/node — độc lập với kích thước node, nên node 16 GB xếp đầy chỉ còn 145 Mi mỗi pod, và pod nhỏ chạm trần SỐ LƯỢNG trước khi chạm trần RAM. Cẩn thận: đo trên kind lạc quan gấp bốn lần vì mỗi node container thấy RAM của cả máy.

DevOps 01/09/2026 8 phút

Tăng 20 lần số đối tượng làm một lệnh kubectl get chậm gấp 85 lần — nhưng tạo pod vẫn mất đúng một giây; cụm không chậm nói chung, chỉ LIST chậm

Tài liệu nói Kubernetes chịu 5.000 node và 150.000 pod. Bài này đo cụm thật bắt đầu chậm ở đâu và chậm ở CÁI GÌ: 20.001 ConfigMap làm LIST mất 6,79 giây (85 lần so với 1.001), nhưng tạo pod vẫn ~1 giây. Cái vỡ không phải thao tác điểm mà là LIST/WATCH và bộ nhớ controller — informer giữ toàn bộ đối tượng trong RAM. Kèm hai trần kích thước khác nhau: 1 MB với create, chỉ 262 KB với apply.

Backend 01/09/2026 8 phút

Redis nhanh hơn PostgreSQL 4,1 lần khi ghi — không phải 100 lần như lời đồn; và phần lớn khoảng cách đó là độ bền bị bỏ, không phải kiến trúc

Mở đầu sê-ri bốn mươi phần về Redis, không bằng lời quảng cáo mà bằng cách đo nó cạnh PostgreSQL trên đúng cùng một bài toán. Redis nhanh hơn 4,1 lần khi ghi và 2,0 lần khi đọc — nhưng bật cờ UNLOGGED trên Postgres là khoảng cách co còn 1,4 lần, cho thấy Redis nhanh chủ yếu vì mặc định không hứa gì về độ bền. Bộ nhớ mỗi bản ghi gần bằng nhau (185 vs 178 byte), và có một câu hỏi Redis không trả lời được.

Backend 01/09/2026 8 phút

Một kết nối Redis duy nhất nhảy từ 25.850 lên 1.136.364 lệnh/giây mà không đổi một dòng cấu hình — vì nút thắt chưa bao giờ là CPU, mà là lượt đi về

Redis xử lý lệnh bằng một luồng duy nhất, nghe như lãng phí trên máy 16 nhân. Đo thật cho thấy nút thắt nằm ở chỗ khác: một luồng vẫn tăng gần tuyến tính tới 8 kết nối, và một kết nối đơn dùng đường ống 64 đạt 1,1 triệu lệnh/giây — gấp 44 lần cùng kết nối đó không đường ống. Không đường ống, Redis không dùng hết nổi một nhân vì phần lớn thời gian nằm trong lời gọi đọc/ghi socket, mỗi lời gọi mang đúng một lệnh.