Khái niệm thiết kế nào mô tả việc đặt một hàng đợi giữa hai thành phần của một ứng dụng sao cho, ngay cả khi một thành phần dừng, thành phần kia vẫn có thể tiếp tục xử lý?

1 / 1
Hãy chọn một đáp án
ĐúngB

Giải thích

Chọn khái niệm thiết kế tách rời phụ thuộc giữa các thành phần bằng hàng đợi.

  • 1đặt một hàng đợi giữa hai thành phầnGiao tiếp bất đồng bộ qua hàng đợi thay vì gọi trực tiếp
  • 2ngay cả khi một thành phần dừngSự cố không được lan sang phía kia
  • 3tiếp tục xử lýTin nhắn được giữ lại và có thể tiếp tục sau khi phục hồi
ASai

Liên kết chặt (tight coupling)

Liên kết chặt là một thiết kế trong đó các thành phần phụ thuộc trực tiếp lẫn nhau.

Nếu một thành phần dừng, thành phần kia bị ảnh hưởng và có xu hướng cũng dừng theo, ngược lại với việc tách rời bằng hàng đợi của câu hỏi này, nên không đúng.

BĐúng

Liên kết lỏng (loose coupling)

Chính xác. Liên kết lỏng là một thiết kế đặt một hàng đợi (chẳng hạn SQS) giữa các thành phần để giảm phụ thuộc trực tiếp. Ngay cả khi phía nhận dừng, các tin nhắn vẫn được giữ trong hàng đợi và quá trình xử lý có thể tiếp tục sau khi phục hồi. Vì sự cố được khoanh vùng tại một chỗ, tính sẵn sàng được cải thiện.

CSai

Mở rộng theo chiều dọc (vertical scaling)

Mở rộng theo chiều dọc là một kỹ thuật tăng hiệu năng của một máy chủ duy nhất (số nhân CPU và xung nhịp, dung lượng bộ nhớ, v.v.) — scale-up.

Nó không liên quan đến việc tách rời phụ thuộc giữa các thành phần, nên không đúng.

DSai

Điểm lỗi đơn (SPOF)

Điểm lỗi đơn là tên của một vấn đề — một chỗ mà nếu nó hỏng, toàn bộ hệ thống dừng.

Nó ngược lại với khái niệm thiết kế khoanh vùng sự cố bằng hàng đợi, nên không đúng.

Điểm cần nhớ

'Chèn một hàng đợi', 'khoanh vùng sự cố', và 'tiếp tục dù một phía dừng' chỉ đến liên kết lỏng. SQS / SNS là đại diện tiêu biểu. Nó tương phản với liên kết chặt (phụ thuộc trực tiếp), vốn có nguy cơ sự cố lan rộng.