Iam將郵件發送到隊列並在rails應用程序中使用亞馬遜sqs隊列系統。但由於隊列遵循FIFO流程,因此它將以相同的方式獲取下一個項目。假設如果我有一個隊列中的100個項目,我如何從隊列中檢索第35個項目並處理它。據我所知,amazon sqs沒有提供這樣的方法。那麼是否有任何其他方法/解決方法可以實現此功能。如何檢索亞馬遜sqs和ruby隊列中的第n個項目
0
A
回答
1
沒有辦法做到這一點; SQS不保證隊列中物品的順序由於其地理上的冗餘性質;它甚至不能保證FIFO。如果您絕對必須按順序處理事情,並且需要在隊列中「向前看」的能力,SQS可能不是您的最佳選擇。也許像DynamoDB這樣的定製隊列可能會更好。
0
SQS旨在保證至少一次交付並且不考慮消息的順序。所以對於你是否可以這樣做的問題的簡單回答是否定的。
一個解決將取決於你的用例:
不同工藝處理隊列中的消息,使中拆分工作,確保他們不都處理相同的項目 - 不同的隊列是一種方法,或者在每個消息前加上一個標識符來表示哪個進程應該在其上工作。例如,如果我有4個守護進程正在運行,我可以在隊列中爲每個消息加上應該在其上運行的進程的ID - 1,2,3或4。每個進程只會處理與其對應的編號的消息ID。
到達順序至關重要 - 在這種情況下,最好不要使用SQS,因爲它不能用於這種方式。 CloudAMQP是基於雲的服務,基於RabbitMQ,這是一個真正的FIFO隊列,並且比SQS更適合這種情況。
相關問題
- 1. 亞馬遜SQS子隊列
- 2. Laravel隊列與亞馬遜SQS
- 3. 亞馬遜SQS消息隊列
- 4. 如何運行隊列和配置Laravel ENV亞馬遜SQS
- 5. 亞馬遜SQS隊列:獲得排隊響應
- 6. 亞馬遜SQS監聽器
- 7. 亞馬遜SQS - 讓x秒
- 8. 使用亞馬遜SQS的最佳做法 - 輪詢隊列
- 9. 將共享sqs隊列添加到亞馬遜控制檯
- 10. 使用SQS發送Laravel隊列消息亞馬遜
- 11. 亞馬遜SQS中的郵件數量
- 12. 沒有BOTO的亞馬遜SQS
- 13. 失敗的亞馬遜SQS請求
- 14. 替代亞馬遜SQS的Python
- 15. Spring與亞馬遜SQS的集成
- 16. 亞馬遜ASIN - 亞馬遜標準項目編號
- 17. linode vs亞馬遜ec2 vs heroku項目與亞馬遜s3
- 18. 如何檢索亞馬遜api產品價格只爲亞馬遜merchantID
- 19. 亞馬遜SQS簽名錯誤
- 20. 亞馬遜SNS - > SQS郵件正文
- 21. 發送XML消息給亞馬遜SQS
- 22. 亞馬遜SQS字符編碼問題
- 23. 如何搜索iPhone上的亞馬遜產品/項目?
- 24. 如何獲得Java中隊列中的第n個項目?
- 25. 如何配置Elasticsearch以從亞馬遜SQS中提取消息
- 26. 從亞馬遜(api)檢索fba賣家
- 27. 無法檢索亞馬遜證書
- 28. 如何獲取,按項目顯示亞馬遜商城列表?
- 29. 搜索亞馬遜只返回10個項目
- 30. 是否有亞馬遜API來搜索亞馬遜的歌曲?