張貼日期: Nov 26, 2019

AWS Lambda 現在支援 Destinations for asynchronous invocations,這是一項新功能,讓您無須編寫程式碼,即可深入了解非同步叫用結果,並將結果路由至 AWS 服務

現在,當您非同步叫用函數時,Lambda 會將事件傳送至佇列。單獨的程序會從佇列讀取事件並執行您的函數。將事件新增至佇列後,Lambda 傳回狀態碼,以確認佇列已接收該事件。但是,您不會收到確認事件是否已成功處理的資訊。

使用 Destinations,您無須編寫程式碼,即可將非同步函數執行結果傳送至目的地資源。函數執行結果包括版本、時間戳記、請求內容、請求承載、回應內容和回應承載。對於每種執行狀態 (即成功和失敗),您可以從四個選項中選擇一個目的地:另一個 Lambda 函數SNS 主題SQS 標準佇列EventBridge。 

現在,您可以充分利用執行狀態、內容、承載和目的地的各種組合,透過非同步叫用來建置新功能。例如,您可以透過執行狀態,監控無伺服器應用程式的運作狀態,無須編寫程式碼,即可將訊息傳送至 SQS 和 SNS。失敗時,您可以將失敗的事件路由至目的地,以便以其他方式對其進行調查或處理。Destinations 能讓您簡化程式碼,並利用 Lambda 上的內建錯誤處理控件。

您可以透過 AWS 管理主控台、AWS CLI、AWS CloudFormation 或 AWS SDK for Lambda 開始使用這些功能。在提供 AWS Lambda 的所有 AWS 區域皆可免費使用這些功能。如需 AWS Lambda 適用區域的相關詳細資訊,請參閱 AWS 區域表。若要進一步了解,請參閱 AWS Lambda 開發人員指南中的 Lambda Destinations,並瀏覽 Lambda Destinations 的部落格文章。