Lập trình 22/09/2026 7 phút

Counter và gauge với expvar: hai loại metric nền tảng, và vì sao đếm không atomic mất 80% dữ liệu

Log trả lời 'chuyện gì đã xảy ra với request này', metric trả lời 'hệ thống đang thế nào tổng thể'. Bài này đo thật hai loại metric cơ bản nhất bằng expvar của thư viện chuẩn Go: counter (tổng cộng dồn, chỉ tăng) và gauge (mức tức thời, lên xuống). Kèm một bằng chứng đanh thép về tính đồng thời: 50 goroutine cùng ++ một biến int thường làm mất 81.9% số đếm, trong khi expvar.Int (atomic) đếm đúng tuyệt đối.