2016-03-15 23 views
0

我有兩個aws棧說內部和外部彈性s3通知

一個用於內部處理,另一個是暴露給我們的客戶。

我們的客戶端將在s3中創建文件,該文件存在於外部堆棧中。我們不會經常更新這個外部堆棧。

該內部堆棧將包含我們解決方案的最新版本。我們會更頻繁地更新這個內部補丁,修補程序和版本。

我們已經在外部堆棧中設置了s3通知,它將添加一個條目SQS,該條目存在於內部堆棧中。對於此SQS,內部堆棧的更新至少需要30分鐘的停機時間。

我們怎樣才能確保我們收到在這段時間(10分鐘)內添加的文件的通知?我們是否有AWS中的任何配置來使通知具有彈性?

回答

0

我不明白爲什麼你有SQS隊列的停機時間。您的意思是接收SQS消息的服務會有停機時間嗎?如果是這樣,那麼請確保您的SQS信息保留期限設置爲30分鐘以上,並且在停機期間這些信息將存儲在SQS中。

+0

我們將停止整個堆棧並重新創建它。目前我們的SQS將會下降。由於SQS隊列將被重新創建,因此在其上設置保留期是沒有意義的。我希望S3通知具有一些保留期限或重試機制 – sag

+0

我覺得對生產環境進行更改可能有更好的方式,而不是刪除整個過程並重新創建它。但是,如果這就是您正在做的事情,那麼也許可以將S3通知發送到Lambda函數,如果SQS隊列不可用,它們將它們存儲在DynamoDB的某個位置。然後,您可以在重新創建環境後運行某些操作將其移至SQS。 –

+0

好吧,我知道了,所以在失敗的情況下,沒有辦法延遲或重新發送來自S3的通知?如果您已經說過這種情況,那麼我們可以找到更好的方式來對生產進行更改。你能否相應地更新答案? – sag