Error budget: cách chúng tôi cân tốc độ phát hành và độ ổn định
Một hệ thống “không bao giờ được lỗi” thường là hệ thống chậm đổi mới nhất. Error budget biến câu hỏi cảm tính đó thành một con số mà cả kỹ thuật và nghiệp vụ đều đồng ý được.
Khi một hệ thống đặt mục tiêu sẵn sàng 100%, mọi thay đổi đều trở thành rủi ro không được phép xảy ra. Kết quả thường thấy: quy trình phê duyệt dài, phát hành theo quý, và cuối cùng là một lần go-live lớn mang theo toàn bộ rủi ro đã dồn nén.
Error budget là gì
Nếu SLO của một hành trình nghiệp vụ là 99,9% trong 30 ngày, phần 0,1% còn lại chính là error budget — khoảng thời gian hệ thống được phép không đạt mục tiêu. Đây không phải sự cho phép cẩu thả, mà là ngân sách rủi ro có giới hạn rõ ràng.
Còn ngân sách thì đội phát triển được phát hành. Hết ngân sách thì ưu tiên chuyển sang việc làm hệ thống ổn định lại.
Ba việc cần làm trước khi đặt con số
- Xác định hành trình người dùng quan trọng — không đặt SLO cho từng máy chủ, mà cho việc người dùng cần làm.
- Đo được trước khi cam kết: nếu chưa có dữ liệu ba tháng, con số SLO chỉ là mong muốn.
- Thống nhất với phía nghiệp vụ về hệ quả khi hết ngân sách, trước khi sự cố đầu tiên xảy ra.
Điều thường bị bỏ qua
Error budget chỉ có tác dụng nếu nó dẫn đến quyết định. Nếu ngân sách cạn mà mọi thứ vẫn tiếp diễn như cũ, con số đó chỉ là một ô trên dashboard. Trong các hệ thống chúng tôi vận hành, quy tắc dừng phát hành được ghi vào tài liệu vận hành và được chính đội phát triển đồng thuận từ đầu.
Điểm cuối: hãy đi kèm blameless postmortem. Nếu mỗi lần cạn ngân sách là một lần tìm người chịu trách nhiệm, đội vận hành sẽ học cách che số liệu thay vì cải thiện hệ thống.



