共計 879 個字符,預計需要花費 3 分鐘才能閱讀完成。
這篇文章主要介紹 Amazon SQS 觸發 AWS Lambda 及重試 /DLQ 的示例分析,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
Amazon 在 2018 年 6 月份宣布可以設置用 SQS 來觸發 Lambda,SQS 不再是單純用于 ECS 服務中,或用于伸縮控制的。這兒就來親自嘗試一下用 SQS 驅動的 Lambda,以及要注意的要素。
首先使用 Java 編寫 Lambda 的話,AWS 在 com.amazonaws:aws-lambda-java-events:2.20 版本開始加入了 com.amazonaws.services.lambda.runtime.events.SQSEvent 類,可是這個版本的 aws-lambda-java-events 是有所限的,因為 SQSEvent.SQSMessage 類是私有的,這就造成不能獲取到 SQSEvent 中的記錄數據。
// 下面的操作代碼無法編譯,因為 SQSEvent.SQSMessage 是私有的,不可訪問
SQSEvent.SQSMessage sqs = sqsEvent.getRecords().get(0);
sqsEvent.getRecords().get(0).getBody();
Java 使用 SQS 來驅動 Lambda 的話,至少需要 com.amazonaws:aws-lambda-java-events:2.2.1 版本,從此 SQSEvent.SQSMessage 變成 public 了。該版本是于 2018 年 6 月傳到 Maven 官方中央倉庫的,這就是那時才能真正用來寫 Java 的 SQS 觸發的 Lambda.
同時此篇也是作為上文 AWS Lambda 重試與死信隊列 (DLQ) 的一個很重要的補充。在此也會驗證 SQS 觸發的 Lambda 的重試機制以及 DLQ 相關的內容。
以上是“Amazon SQS 觸發 AWS Lambda 及重試 /DLQ 的示例分析”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注丸趣 TV 行業資訊頻道!