- Tổng đài 24/7: 1800 646 881
- Đăng nhập
- 3
Thuật ngữ Fault Tolerance có lẽ không còn quá xa lạ với những doanh nghiệp làm về phần mềm, công nghệ. Tuy nhiên nhiều người vẫn chưa hiểu hết ý nghĩa của nó. Trong bài viết này, chúng tôi sẽ đề cập đến những vấn đề cơ bản của nó như:
Hãy cùng BKHOST theo dõi bài viết để trả lời những thắc mắc xoay quanh chủ đề này.
Fault Tolerance – hệ thống chịu lỗi là khả năng của một hệ thống có một hay nhiều thành phần của chúng bị lỗi. Chúng vẫn đang hoạt động bình thường mà không gặp phải vấn đề gì và đây chỉ là dự đoán.
Fault Tolerance hướng tới việc ngăn chặn những sự cố có thể phát sinh từ những thành phần nhỏ nhất. Bên cạnh đó, nó vẫn đảm bảo tính sẵn sàng và liên tục của các ứng dụng hoặc hệ thống quan trọng.
Khi có những thành phần bị lỗi, hệ thống chịu lỗi sẽ thay thế chúng bằng những thành phần khác. Điều này cũng nhằm đảm bảo dịch vụ vẫn tiếp tục hoạt động bình thường. Những thành phần này bao gồm: hệ thống phần cứng, hệ thống phần mềm và các nguồn năng lượng khác.
Nó được hỗ trợ bởi các hệ thống giống nhau hoặc gần như nhau. Ví dụ: nếu bạn sợ bản báo cáo của mình bị mất thì sẽ sử dụng khả năng sao lưu theo thời gian thực. Việc này giúp tạo ra một bản báo cáo y hệt cập nhật bất cứ thay đổi nào trên bản chính.
Hệ thống phần mềm được dự trữ từ các phiên bản phần mềm khác. Ví dụ: cơ sở dữ liệu thông tin khách hàng sẽ được sao chép sang các thiết bị khác. Khi cơ sở dữ liệu chính gặp lỗi, các hoạt động tiếp theo của nó sẽ được thay thế bằng cơ sở dữ liệu đã được sao lưu này.
Thường sử dụng các nguồn điện thay thế nếu có sự cố xảy ra. Ví dụ: khi nguồn điện chính bị hỏng, hệ thống máy phát điện sẽ được đưa vào thế chỗ cho chúng.
Vậy nên khi các thành phần gặp sự cố thì hệ thống chịu lỗi sẽ sử dụng thành phần dự phòng để khắc phục lỗi đó.
Fault Tolerance – hệ chịu lỗi có vai trò vô cùng quan trọng trong công tác khắc phục hậu quả. Ví dụ: Các thành phần đã được sao lưu có thể thay thế, phục hồi các hệ thống quan trọng một cách nhanh chóng. Dù cho những lỗi này đến từ phía con người cố ý phá hủy cơ sở hạ tầng CNTT.
High availability (hay tính sẵn sàng cao) nói tới khả năng giảm thời gian ngừng hoạt động. Nó được sử dụng nhằm mục đích bảo toàn dịch vụ của hệ thống. Bên cạnh đó, nó cũng được biểu thị bằng thời gian hoạt động của hệ thống (uptime). Lượng thời gian này là được hiểu là phần trăm trên toàn bộ thời gian chạy (running time).
Để đảm bảo các họa động vẫn được duy trì an toàn, trong chiến lược kinh doanh sẽ gồm cả hệ thống chịu lỗi và tính sẵn sàng cao.
Điểm giống nhau giữa Fault Tolerance – hệ thống chịu lỗi với High availability – tính sẵn sàng đó chính là đề cập đến thời gian. Tuy nhiên, giữa chúng tồn tại những điểm khác nhau. Chính những điều khác biệt này đã thể hiện rõ hơn tác dụng của chúng.
Để có thể thấy những sự khác biệt này chúng ta sẽ phân tích các trường hợp sau đây:
Những yếu tố cần lưu ý:
Khi tạo ra các hệ thống Fault Tolerance và High availability ta cần chú ý một số điều sau:
Hệ thống có thể yêu cầu cả Fault Tolerance cùng với High availability. Vì thế, khi thiết kế bạn cần cân nhắc các yếu tố này thật kỹ.
Hệ thống cần hoạt động liên tục và có khả năng khắc phục sự cố kịp thời. Fault Tolerance – hệ thống chịu lỗi đã sử dụng một số giải pháp quan trọng như:
Đây là 2 giải pháp cần thiết và không thể thiếu khi nhắc tới Hệ thống chịu lỗi đối với các ứng dụng web.
Giải pháp đầu tiên được đề cập tới đó chính là cân bằng tải (Load balancing). Nó có tác dụng cho phép một ứng dụng có thể hoạt động trên nhiều nút mạng khác nhau. Mục đích ở đây là phòng chống và ngăn chặn sự cố có thể xảy ra trên một nút mạng duy nhất.
Bên cạnh đó, Load balancing còn có khả năng tối ưu hóa việc phân chia công việc trên những tài nguyên máy. Từ đó, giúp chúng thích nghi dễ dàng hơn trước các sự cố gián đoạn hoặc ngừng hoạt động. Ngoài ra, nó còn có thể phản ứng kịp thời trước các vấn đề từ phía mạng cục bộ.
Cách thứ hai thường được sử dụng trong các trường hợp vô cùng bất lợi đó là Failover (thay thế dự phòng). Đó là khi hệ thống đang bị lỗi mạng hoàn toàn do các sự cố không mong muốn gây nên. Lúc này, các hệ thống dự phòng sẽ được tự động kích hoạt để thay thế những phần lỗi. Từ đó vẫn đảm bảo các ứng dụng web vẫn hoạt động bình thường cho hệ thống chính được sửa chữa xong.
Để không tồn tại thời gian ngưng hoạt động (downtime = 0), ta cần sử dụng một hot failover để sẵn sàng thay thế khi gặp sự cố. Ngoài ra, cũng có thể sử dụng warm failover hoặc cold failover. Tuy nhiên hai trường hợp này cần có thời gian để kích hoạt và xử lý công việc.
Trong bài viết đề cập tới các vấn đề liên quan đến Fault Tolerance – hệ thống chịu lỗi. Hy vọng những thông trên hữu ích đối với bạn khi mới tiếp xúc với thuật ngữ này. Để một hệ thống hoạt động ổn định nhất, việc phát triển khả năng chịu lỗi luôn phải quan tâm hàng đầu.
Nếu còn gặp bất cứ vướng mắc gì về Fault Tolerance, hãy để lại ở bên bình luận bên dưới, BKHOST sẽ trả lời bạn trong thời gian sớm nhất.
P/s: Bạn cũng có thể truy cập vào Blog của BKHOST để đọc thêm các bài viết chia sẻ kiến thức về lập trình, quản trị mạng, website, domain, hosting, vps, server, email,… Chúc bạn thành công.
Thuê Máy Chủ Vật Lý tại BKHOST
Giảm giá cực sâu, chất lượng hàng đầu. Đăng ký ngay hôm nay: