我的系統運行在亞馬遜自動調節組上,一個功能允許用戶進行用戶消息傳遞,我有以下用例來解決。在發送到SNS之前,我可以將Amazon SQS用作延遲隊列嗎?
- 我的應用程序在用戶之間發送了一條新消息。
- 通過電子郵件通知用戶的消息被放入具有60秒延遲的隊列中。此延遲允許實時聊天客戶端(faye/angularjs)查看消息並將其標記爲已查看。
- 在延遲之後,消息被拾取,檢查「讀取」狀態,並且如果未被客戶端讀取,則分派電子郵件。
本來我打算在每個應用程序服務器上使用cronjob來輪詢消息隊列,但是對我而言,使用SNS調用某種電子郵件發送端點(可能在Lambda中)會更有效, 。
我看不出有什麼辦法可以讓SNS進行SQS輪詢,但是有人可以建議這樣做嗎?本質上,我希望延遲SNS,這樣我就不會通過電子郵件警報在「實時」聊天中發送垃圾郵件。
謝謝
聽起來像我現在最好採取cronjob-listening-SQS路線。直到亞馬遜推出幾個附近的功能!謝謝! – JimBlizz
對於那些在2017年或以後發現自己的人 - 查看亞馬遜的「雲計算」解決方案:CloudWatch Events:http://docs.aws.amazon.com/AmazonCloudWatch/latest/events/WhatIsCloudWatchEvents.html – cr125rider