我有一個現有 go1.x 運行時的 lambda 函數,它可以與 sqs 觸發器一起正常工作。嘗試按照此處的說明更新函數以使用新的provided.al2運行時。
https://aws.amazon.com/blogs/compute/migration-aws-lambda-functions-from-the-go1-x-runtime-to-the-custom-runtime-on-amazon-linux-2 /
已使用此更新的建置命令更新了具有 bootstrap 名稱的二進位檔案。
GOOS=linux GOARCH=amd64 go build -o bootstrap
更新這個新套件並更改執行時間後,執行總是在初始化階段逾時。
INIT_REPORT 初始化持續時間:10008.47 ms 階段:init 狀態:逾時
INIT_REPORT 初始化持續時間:60060.47 ms 階段:呼叫狀態:錯誤錯誤類型:Runtime.Unknown
當我將二進位檔案更改為 main 並切換回 go1.x 運行時,相同的程式碼可以工作。 有人可以幫忙嗎?
編輯:
將 aws-lambda-go 庫更新到最新版本後問題已解決。
舊版在 Go 1.x 運行時運行得非常好。但要使用自訂 amazon linux 2 運行時,必須將程式庫更新至最新版本。
事實證明,現有程式碼中使用的 github.com/aws/aws-lambda-go 函式庫與新的 al2 運行時不相容。已將此程式庫更新至最新版本,初始化逾時錯誤問題已解決
以上是帶有 golang 的 Lambda 自訂 al2 運行時,初始化階段逾時的詳細內容。更多資訊請關注PHP中文網其他相關文章!