Để đảm bảo các đại lý bán hàng không xử lý trùng lặp các đơn hàng lấy từ một Pub/Sub subscription và giữ cho hệ thống đơn giản nhất:
- Sử dụng tính năng phân phát đúng một lần (exactly-once delivery) của Pub/Sub (Lựa chọn C): Đây là tính năng tích hợp sẵn của Pub/Sub, tự động đảm bảo rằng một tin nhắn khi đã được một subscriber nhận và đang xử lý (hoặc đã acknowledge) sẽ không bị gửi lại cho các subscriber khác chạy song song. Giải pháp này hoàn toàn cấu hình được trên Pub/Sub mà không cần viết thêm mã nguồn hay cài đặt thêm hạ tầng khác.
Các lựa chọn khác làm tăng độ phức tạp không cần thiết:
- A: Dùng Dataflow Deduplicate yêu cầu cài đặt và vận hành một pipeline Dataflow tốn kém.
- B: Sử dụng cơ sở dữ liệu giao dịch đòi hỏi lập trình phức tạp để quản lý trạng thái tin nhắn (idempotency layer).
- D: Push subscription không giúp giải quyết tận gốc bài toán phân phát trùng lặp giữa các agent nếu không có logic xử lý trùng lặp bổ sung.
(Đáp án được gợi ý bởi AI)