Phân tán tài nguyên qua nhiều Availability Zone.
Chính xác. Phân tán tài nguyên qua nhiều AZ nghĩa là ngay cả khi một AZ gặp sự cố, quá trình xử lý vẫn có thể tiếp tục ở các AZ còn lại, cải thiện rất nhiều khả năng chịu lỗi.
Những cách nào sau đây phù hợp để cải thiện tính sẵn sàng và khả năng chịu lỗi của một ứng dụng? (Chọn HAI đáp án.)
Chọn 2 cách phù hợp để nâng cao tính sẵn sàng và khả năng chịu lỗi.
Phân tán tài nguyên qua nhiều Availability Zone.
Chính xác. Phân tán tài nguyên qua nhiều AZ nghĩa là ngay cả khi một AZ gặp sự cố, quá trình xử lý vẫn có thể tiếp tục ở các AZ còn lại, cải thiện rất nhiều khả năng chịu lỗi.
Gộp tất cả thành phần lên một máy chủ duy nhất.
Gộp lên một máy chủ duy nhất khiến máy chủ đó trở thành điểm lỗi đơn; nếu nó hỏng, mọi thứ đều dừng.
Điều này làm giảm tính sẵn sàng, nên không đúng.
Cắt giảm chi phí lưu trữ bằng cách không sao lưu.
Không có bản sao lưu, bạn không thể khôi phục khi dữ liệu bị mất.
Chi phí giảm nhưng khả năng chịu lỗi giảm theo, nên không đúng.
Kết hợp một load balancer với Auto Scaling.
Chính xác. Một load balancer phân tán lưu lượng qua nhiều instance, và Auto Scaling bám theo nhu cầu và thay thế các instance không khỏe mạnh, đạt được tính sẵn sàng cao và khả năng chịu lỗi.
Tắt health check để tránh khởi động lại không cần thiết.
Health check là cơ chế phát hiện các instance không khỏe mạnh và loại bỏ chúng.
Tắt nó đi khiến lưu lượng vẫn tiếp tục đến các instance hỏng, làm giảm tính sẵn sàng, nên không đúng.
Cách tiêu chuẩn để nâng cao tính sẵn sàng là phân tán đa AZ + load balancer + Auto Scaling. Ngược lại, 'gộp một máy chủ', 'không sao lưu', và 'tắt health check' là các anti-pattern kinh điển tạo ra điểm lỗi đơn hoặc mất mát không thể khôi phục.