Circuit breaker ngăn lỗi lan truyền (cascading failure): khi một dependency liên tục lỗi/timeout, thay vì cứ gọi và chờ, ta "ngắt mạch" để fail nhanh.
Ba trạng thái:
- Closed: request đi qua bình thường; đếm tỉ lệ lỗi.
- Open: vượt ngưỡng lỗi → chặn ngay, trả lỗi/fallback tức thì mà không gọi dependency, cho nó thời gian hồi phục.
- Half-open: sau thời gian chờ, cho vài request thử; nếu ổn → về Closed, nếu vẫn lỗi → quay lại Open.
Lợi ích: bảo vệ tài nguyên (thread, connection), tránh sập dây chuyền, cho hệ downstream phục hồi. Thường đi kèm timeout, fallback và bulkhead (cô lập tài nguyên theo dependency).