2017-07-29 176 views
0

我有一個要求發送電子郵件和短信基於一些條件給用戶,我想發佈消息到AWS(任何服務)與時間和消息在用戶創建時,有沒有根據我的預定時間和消息調用lambda函數的方式?AWS lambda函數將來的調度

+0

你的描述很混亂。您是否說在應用程序中創建用戶時,您是否希望定義執行Lambda函數的未來時間,以及有關將用戶傳遞給Lambda函數的信息?如果這不正確,請編輯您的問題以闡明您的要求。 –

+0

你能解釋一下發送消息給任何服務是什麼意思嗎?你在哪裏創建用戶? – Ashan

回答

1

聽起來像你所說的是你想存儲一個消息和一個'發送時間'的地方,然後當那個時候到來時,通過短信和/或SES發出該消息,對嗎?

很多方法來完成它,但一種方法是將您的消息存儲到您選擇的數據庫(可能是dynamodb),並有一個lambda函數定期(每分鐘或任何確定的頻率)調用以找到準備發送的消息。

在這種情況下,您可以使用cloudwatch事件以您決定的間隔(但不超過每分鐘一次)調用lambda函數。

可能的增強(特別是如果你有一個數量巨大的事件)將是lambda函數不實際處理短信/ ses發送 - 但只是找到那些準備發送的消息 - 並將這些消息發佈到SNS主題,並具有不同的lambda函數來處理這些消息的實際處理(發送)。

+0

E.J. Brennan,感謝您的回放,目前我正在使用dynamo db並繼續我的工作,但我的最終目標是避免DB,所以我正在尋找任何隊列以保持我的信息,直到時間到來。 –

0

您可以爲此使用CloudWatch預定事件。它允許你指定cron表達式。事件本身可以觸發你的lambda,然後檢查你可能有的任何先決條件,然後通過SNS或其他方式發送通知。