

Bạn có biết chỉ một giờ downtime có thể khiến doanh nghiệp thiệt hại hàng trăm nghìn USD? Theo khảo sát của ITIC, hơn 90% doanh nghiệp vừa và lớn cho biết mỗi giờ gián đoạn hệ thống gây tổn thất trên 300.000 USD. Fault tolerance chính là giải pháp giúp giải quyết bài toán này. Vậy fault tolerance là gì, hoạt động như thế nào và khác gì với High Availability? Hãy cùng tìm hiểu trong bài viết dưới đây.
Fault tolerance là khả năng chịu lỗi của hệ thống, tức là hệ thống vẫn tiếp tục hoạt động bình thường ngay cả khi một hoặc nhiều thành phần như phần cứng, phần mềm hoặc mạng gặp sự cố. Thay vì để lỗi lan rộng và làm gián đoạn dịch vụ, hệ thống sẽ tự động cô lập, xử lý và che giấu lỗi (mask errors), giúp duy trì hoạt động ổn định để người dùng cuối hầu như không nhận thấy sự cố đang xảy ra.

Để đạt được điều này, kiến trúc fault tolerance thường sử dụng các cơ chế dự phòng nhằm loại bỏ điểm lỗi đơn (Single Point of Failure - SPOF). Khi một thành phần ngừng hoạt động, thành phần dự phòng sẽ ngay lập tức thay thế, giúp hệ thống duy trì tính sẵn sàng cao (High Availability) và hoạt động liên tục (Business Continuity).
Fault tolerance trong điện toán đám mây là việc áp dụng các cơ chế chịu lỗi trên hạ tầng cloud để đảm bảo ứng dụng vẫn hoạt động liên tục ngay cả khi một hoặc nhiều thành phần của hệ thống gặp sự cố. Thay vì triển khai ứng dụng và dữ liệu trên một máy chủ duy nhất, chúng sẽ được phân tán trên nhiều tài nguyên độc lập, chẳng hạn như nhiều máy chủ hoặc nhiều vùng khả dụng (Availability Zone - AZ), đồng thời được sao chép và đồng bộ theo thời gian thực.
Khi một máy chủ hoặc một Availability Zone gặp sự cố, hệ thống sẽ tự động phát hiện lỗi và chuyển lưu lượng truy cập cùng khối lượng công việc sang các tài nguyên dự phòng thông qua các cơ chế như failover, load balancing và replication. Nhờ đó, dịch vụ vẫn được duy trì liên tục, hạn chế tối đa downtime và giảm nguy cơ mất dữ liệu.
Để một hệ thống có khả năng chịu lỗi đòi hỏi phải có 5 thành phần quan trọng dưới đây:

Fault tolerance hoạt động dựa trên nguyên tắc luôn có sẵn một hoặc nhiều thành phần dự phòng để thay thế ngay khi thành phần chính gặp sự cố. Nhờ đó, hệ thống vẫn duy trì hoạt động liên tục mà không hoặc rất ít ảnh hưởng đến người dùng. Một hệ thống fault-tolerant thường vận hành theo quy trình sau:

Hệ thống triển khai sẵn các máy chủ, thiết bị lưu trữ hoặc đường truyền dự phòng. Đồng thời, dữ liệu được sao chép (replication) và đồng bộ liên tục giữa các thành phần để đảm bảo luôn có bản sao mới nhất.
Các công cụ giám sát (Monitoring) liên tục kiểm tra trạng thái của máy chủ, ứng dụng và dịch vụ thông qua Health Check hoặc Heartbeat. Khi phát hiện một thành phần ngừng phản hồi hoặc hoạt động bất thường, hệ thống sẽ ngay lập tức ghi nhận sự cố.
Sau khi xác định lỗi, cơ chế Failover sẽ tự động chuyển lưu lượng truy cập và khối lượng công việc sang máy chủ hoặc dịch vụ dự phòng. Nếu hệ thống sử dụng Load Balancer, bộ cân bằng tải sẽ ngừng gửi yêu cầu đến máy chủ bị lỗi và chuyển toàn bộ lưu lượng sang các máy chủ còn hoạt động.
Trong khi người dùng vẫn sử dụng dịch vụ bình thường, hệ thống sẽ tiến hành sửa chữa hoặc thay thế thành phần gặp lỗi. Sau khi khắc phục xong, thành phần này sẽ được đồng bộ dữ liệu và đưa trở lại cụm hoạt động.
Việc triển khai fault tolerance mang lại nhiều lợi ích quan trọng cho hệ thống và doanh nghiệp. Dưới đây là một số ưu điểm nổi bật:
Fault tolerance giúp hệ thống tiếp tục hoạt động ngay cả khi một hoặc nhiều thành phần gặp sự cố. Nhờ cơ chế dự phòng và tự động chuyển đổi sang thành phần thay thế (failover), dịch vụ vẫn được duy trì liên tục, giảm tối đa thời gian downtime và hạn chế ảnh hưởng đến người dùng.

Khả năng tự động phát hiện, xử lý và khắc phục sự cố giúp hệ thống vận hành ổn định hơn, ngay cả khi xảy ra lỗi. Đồng thời, việc loại bỏ các điểm lỗi đơn (Single Point of Failure - SPOF) cũng giúp tăng tính sẵn sàng (High Availability), đảm bảo dịch vụ luôn sẵn sàng phục vụ người dùng.
Fault tolerance thường kết hợp với các cơ chế như sao chép dữ liệu (Replication), đồng bộ dữ liệu hoặc lưu trữ dự phòng để bảo vệ dữ liệu. Khi một máy chủ hoặc thiết bị lưu trữ gặp sự cố, hệ thống vẫn có thể truy cập dữ liệu từ bản sao khác, giảm nguy cơ mất hoặc hỏng dữ liệu.

Khi phát hiện một thành phần gặp lỗi, hệ thống sẽ nhanh chóng cô lập khu vực bị ảnh hưởng trước khi sự cố lan sang các thành phần khác. Điều này giúp bảo vệ toàn bộ hệ thống, hạn chế tình trạng lỗi dây chuyền và duy trì hoạt động ổn định.
Việc hạn chế downtime, bảo vệ dữ liệu và duy trì dịch vụ liên tục giúp doanh nghiệp giảm đáng kể chi phí khắc phục sự cố, tránh thất thoát doanh thu do gián đoạn hoạt động, đồng thời nâng cao trải nghiệm và mức độ tin cậy của khách hàng.
Để phân biệt rõ hơn giữa Fault Tolerance và High Availability, hãy cùng xem bảng so sánh dưới đây:
Tiêu chí | Fault Tolerance | High Availability |
Mục tiêu | Duy trì hoạt động liên tục ngay cả khi xảy ra lỗi | Giảm downtime xuống mức thấp nhất |
Downtime | Gần như bằng 0 (Zero Downtime) | Có thể xảy ra downtime ngắn trong quá trình chuyển đổi |
Cơ chế hoạt động | Thành phần dự phòng hoạt động song song và tiếp quản gần như tức thời khi có lỗi | Sử dụng cơ chế như load balancing, clustering hoặc failover để nhanh chóng khôi phục dịch vụ |
Mức độ dự phòng | Cao, thường cần nhiều tài nguyên dự phòng | Thấp hơn, chỉ dự phòng những thành phần quan trọng |
Chi phí triển khai | Cao do phải duy trì hệ thống dự phòng liên tục | Thấp hơn fault tolerance |
Phù hợp với | Ngân hàng, tài chính, y tế, viễn thông, hệ thống giao dịch thời gian thực | Website, ứng dụng doanh nghiệp, thương mại điện tử và các hệ thống chấp nhận downtime ngắn |
Như vậy, High Availability là giải pháp tập trung vào việc giảm downtime xuống mức thấp nhất, trong khi Fault Tolerance hướng đến việc duy trì hoạt động liên tục ngay cả khi xảy ra lỗi, gần như không có gián đoạn. Tùy vào yêu cầu về độ sẵn sàng, mức độ quan trọng của ứng dụng và ngân sách, doanh nghiệp có thể chọn một trong hai hoặc kết hợp cả hai để xây dựng hệ thống hạ tầng ổn định.
Tóm lại, fault tolerance là cơ chế giúp hệ thống tiếp tục hoạt động ngay cả khi xảy ra sự cố, từ đó giảm downtime, hạn chế mất dữ liệu và nâng cao tính sẵn sàng của dịch vụ. Đây là một trong những yếu tố quan trọng khi thiết kế hạ tầng CNTT, đặc biệt với các hệ thống yêu cầu độ ổn định và tính liên tục cao. Hy vọng bài viết đã giúp bạn hiểu rõ fault tolerance là gì, nguyên lý hoạt động cũng như vai trò của hệ thống chịu lỗi.
Nếu doanh nghiệp đang cần xây dựng hệ thống có khả năng chịu lỗi và đảm bảo dịch vụ luôn sẵn sàng, VNPT Cloud cung cấp Cloud Load Balancer kết hợp cơ chế Failover và hạ tầng High Availability, giúp phân phối lưu lượng thông minh, tự động chuyển đổi khi xảy ra sự cố và duy trì hoạt động liên tục. Liên hệ VNPT Cloud để được tư vấn giải pháp phù hợp với nhu cầu của doanh nghiệp.
