Chúng tôi có nhiều người dùng Amazon đang gửi thư vào cùng một hàng đợi SQS, Vì vậy, có thể tìm nạp thư từ hàng đợi trên Cơ sở ID người gửi không? có nghĩa là trả về danh sách thư cụ thể trên cơ sở ID người gửi.SQS của Amazon, có thể lấy thông điệp từ SQS trên cơ sở ID người gửi
Trả lời
Tôi giả định rằng sẽ cần phải xử lý các mục hàng đợi [các thực thể] sau khi thao tác lọc hoàn tất. Mặc dù nhiều hàng đợi chắc chắn có thể giúp ích, nhưng cách mạnh mẽ hơn là thực hiện quá trình xử lý trước, sau đó có một [như lọc theo id người gửi] theo cách của tôi một cách thanh lịch.
Với việc phát hành AWS Lambda, bạn chắc chắn có thể tắt bộ lọc hoặc xử lý trước và sau đó đẩy/đặt nó ở những nơi thích hợp.
Nếu bạn có người dùng đẩy các mục vào Hàng đợi, hãy thử cách tiếp cận dưới đây.
Bạn có thể thử với 2 hàm Lambda [Feeder & Worker].
Feeder sẽ
scheduled lambda function
có nhiệm vụ lấy mục từ SQS (nếu có) và đẩy nó như là một chủ đề SNS (và tiếp tục làm việc đó mãi mãi)Worker sẽ được liên kết với nghe chủ đề SNS sẽ thực hiện
data filtering
[tùy thuộc vào ID người gửi]. Các mục đã qua có thể di chuyển đến hàng đợi hoàn toàn mới và phần còn lại có thể bị xóa.
Cách tốt hơn là để người dùng của bạn đẩy các thực thể trực tiếp đến chủ đề SNS và hàm lambda có thể thực hiện lọc trực tiếp.
Không, bạn không thể lọc thư của mình nhận được yêu cầu trên người gửi, bạn sẽ cần phải đọc tất cả các thư và 'ném ra' (trả lại) thư không khớp, nhưng đó không phải là cách tốt nhất để đi về nó - bạn sẽ được trả tiền cho tất cả những yêu cầu đọc và ném ra rất nhiều tin nhắn (tức là trả lại chúng vào hàng đợi).
Trong khi tất cả người tiêu dùng 'sai' đang làm điều này, người tiêu dùng thực sự muốn/cần thư được gán cho họ sẽ bị chặn thực sự nhận được thư của riêng họ - có thể trong một thời gian rất dài.
Không chắc chắn ý định của bạn, nhưng có vẻ như bạn nên sử dụng nhiều hàng đợi, mỗi người gửi, nếu đó là cách bạn muốn tiêu thụ tin nhắn - không có thêm chi phí để tạo thêm hàng đợi.
- 1. Ruby1.9 và SQS của Amazon?
- 2. Gắn thẻ SQS của Amazon
- 3. Amazon SNS -> SQS nội dung thư
- 4. Tại sao CeleryCAM không hoạt động với SQS của Amazon?
- 5. Thông báo SQS Không xóa
- 6. Không thể truy cập các thuộc tính thư SQS của Amazon trong C#
- 7. Truy xuất nhiều thư từ SQS
- 8. Ví dụ về ứng dụng .net sử dụng Amazon SQS
- 9. Thực tiễn tốt nhất để sử dụng SQS của Amazon - Thăm dò hàng đợi
- 10. Đọc từ hàng đợi SQS với nhiều chủ đề
- 11. Giả lập Amazon SQS trong quá trình phát triển
- 12. Đặt khu vực vào việc tạo Amazon SQS trong C#
- 13. Quyền AWS SQS cho AWS Lambda
- 14. Phát hành một thông báo trở lại SQS
- 15. AWS hai hàng đợi SQS gửi tới một công nhân
- 16. Xử lý hàng đợi SQS bằng boto
- 17. Chính sách thử lại giao hàng của Amazon SNS cho SQS
- 18. Đám mây mùa xuân - SQS
- 19. SQS với cấu hình cần tây
- 20. Thông báo cho khách hàng trình duyệt khi chức năng Lambda được thực hiện bằng cách sử dụng Amazon SQS
- 21. Cách nhận tất cả thư trong hàng đợi SQS của Amazon bằng thư viện boto bằng Python?
- 22. Tỷ lệ thăm dò của người tiêu dùng với Akka, SQS và Camel
- 23. SQS có thực sự gửi nhiều bản ghi đối tượng S3 PUT cho mỗi tin nhắn không?
- 24. Làm cách nào để sử dụng bộ điều hợp JMS để nghe Amazon SQS
- 25. Thực tiễn tốt để đạt được hành vi "Giao hàng chính xác một lần" với SQS của Amazon là gì?
- 26. Lấy sản phẩm từ một người bán cụ thể từ Amazon thông qua API
- 27. Tôi có thể lấy ID s3 kinh điển của người dùng từ dòng lệnh không?
- 28. Django + Celery + SQS -> boto.exception.SQSError: SQSError: 599 gnutls_handshake()
- 29. Truy vấn cơ sở dữ liệu thông điệp SQLite của Thunderbird từ C#
- 30. Nhận id ứng dụng của người gửi thư trong socket.io?