High Availability vs Fault Tolerance

Cả hai đều nhằm giữ dịch vụ liên tục, nhưng khác nhau về cách tiếp cận và chi phí.

High Availability (HA)Fault Tolerance (FT)
Mục tiêuGiảm thiểu tối đa downtime, nhưng chấp nhận gián đoạn nhỏ (vài chục giây/phút khi failover)Không gián đoạn dù có lỗi
Cách làmKhôi phục/chuyển đổi nhanh sang dự phòngNhân đôi toàn bộ chạy song song (active-active)
Chi phíThấp hơn, kiến trúc đơn giản hơnRất cao, phức tạp hơn nhiều

Cách hình dung

  • HA = nhà hàng có nhiều đầu bếp dự trữ: một người nghỉ, vẫn mở nhưng phục vụ chậm hơn chút.
  • FT = nhà hàng có hai hệ thống điện + máy phát: mất lưới điện thì máy phát cấp ngay, không tắt đèn một giây - nhưng lắp đặt rất đắt.

Ví dụ: máy bay hai động cơ = fault-tolerant (một động cơ hỏng vẫn bay); trực thăng một động cơ = không chịu lỗi.

Chọn cái nào

Hệ thống thời gian thực đòi hỏi cao (điều khiển không lưu, tài chính) → gần như FT tuyệt đối. Đa số web thông thường → HA (chấp nhận downtime vài chục giây khi failover) là đủ, tránh over-engineering.

Lưu ý: FT không xử lý được mọi lỗi - bug phần mềm chung thì nhân bản bao nhiêu cũng lỗi như nhau.

Liên quan