[英]AWS SQS Send From Lambda should I use "Add Destination"?
我有一個 Lambda,它由到達 SQS 隊列的消息觸發。 我想在 Lambda 中進行一些處理,然后將消息轉發到另一個 SQS 隊列,以便由另一個 Lambda 進一步處理。 看來我可以通過兩種不同的方式做到這一點:
首選/正確/推薦的方法是什么? 各自的優缺點是什么?
Destination 函數相當新。
一個好處是 Destination 操作由 AWS Lambda 服務觸發,而不是由函數本身觸發。 這在 Lambda 函數無法訪問目標的情況下非常有用。
例如,假設有一個無法訪問 Internet 的 VPC。 配置為使用該 VPC 的 AWS Lambda 函數將無法調用 Amazon SQS API,因為它駐留在 Internet 上。 但是,使用Amazon SQS的目的地將工作,因為AWS LAMBDA服務將發送郵件,這將是VPC的以外進行。 (您也可以為 SQS 使用 VPC 終端節點,但這只是一個示例。)
另請注意,目標僅適用於異步調用的 Lambda 函數。
如果你的流程包含這么多小任務,每個任務需要不同類型的payload,你可以考慮寫一個小代碼來調用每個任務。 作為您的最終響應,我們可能會考慮根據所有小任務返回所有結果,以便您可以監控整個過程並將它們記錄到 CloudWatch Logs 中。
如果您的流程依賴於最終響應,則對於每個執行狀態代碼,例如:
{Status: OnSuccess}
: 觸發 SNS 話題{Status: OnFailure}
: 發送到 SQS 隊列此功能可幫助您減少代碼並使您的 Lambda 更加簡潔明了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.