我想了解我是否需要SQS在我的工作流程中,如果有人能幫助解釋。在我的應用中,當採取行動時,它將信息提交給SNS主題,該主題調用LAMBDA進行一些處理。這是工作偉大的,因爲它是。SNS到Lambda和SNS到SQS到Lambda
當我在網上進行調查時,似乎人們在這個堆棧中使用SQS,以及SNS將SQS信息放到SQS上,然後SQS會調用LAMBDA。
我想我想了解的是在這方面需要SQS。添加或換句話說,通過直接從SNS調用我的LAMBDA,我失去了什麼?
我想了解我是否需要SQS在我的工作流程中,如果有人能幫助解釋。在我的應用中,當採取行動時,它將信息提交給SNS主題,該主題調用LAMBDA進行一些處理。這是工作偉大的,因爲它是。SNS到Lambda和SNS到SQS到Lambda
當我在網上進行調查時,似乎人們在這個堆棧中使用SQS,以及SNS將SQS信息放到SQS上,然後SQS會調用LAMBDA。
我想我想了解的是在這方面需要SQS。添加或換句話說,通過直接從SNS調用我的LAMBDA,我失去了什麼?
在SNS和Lambda之間建立SQS的唯一好處是重新處理。 假設由於某種原因(例如超時或內存不足),Lambda無法處理某些事件,則可以將超時(最大5分鐘)或內存(最大1.5GB)增加,然後重新啓動輪詢,您可以重新處理較舊的事件。 SQS -
這不會在SNS與λ,其中,如果LAMBDA出現故障時丟失
所以,如果您的活動是至關重要的,你不想錯過他們,然後再爲SNS的情況下,有可能 - Lambda
說到SQS無法觸發像SNS那樣的lambda。您將不得不頻繁輪詢SQS
SQS不調用Lambda。 SQS不能調用任何東西。與SQS一起使用Lambda的人員在事件計時器上運行Lambda,就像每分鐘一次一樣,每次函數運行時都會調查SQS以查看是否有要處理的消息。
如果您不需要排隊並防止太多Lambda函數同時運行,那麼您不需要SQS等隊列系統。
對不起。我想我要說的是,當連接的SNS主題收到任何信息時,LAMBDA會被自動調用。這一直很好。我想我想問的是這種方法會擴展嗎?舉例來說,有100個用戶試圖執行該操作,在這種情況下會有SQS幫助解決任何問題,或者我目前的方法是否正常工作? –
這完全取決於您的Lambda函數在做什麼。如果它插入到具有連接限制的關係數據庫中,或者遇到具有速率限制的第三方API,那麼您將遇到問題。如果它只是在S3中更新文件或其他東西,那麼你可能不會遇到問題。您可能需要申請增加您的AWS賬戶中允許的併發Lambda函數,但這是關於它的。 –
SQS是一種便宜且簡單的隊列服務,目前它不具備觸發功能。 – mootmoot