假設(shè)我有以下工作流程func get_result(event) { return result(event) }func post_result_operations(event) { /* do some logging */ }func lambda_handler(event) { return get_result(event) post_result_operations(event)}有沒有辦法創(chuàng)建一個lambda函數(shù),這樣我就可以調(diào)用該函數(shù)并返回其值,然后執(zhí)行.這個想法是,我想通過API調(diào)用我的lambda函數(shù),讓函數(shù)快速返回結(jié)果,然后在返回結(jié)果后執(zhí)行其他操作。有沒有辦法在nodejs或Golang中實現(xiàn)這一點。在Golang中,我們可以有類似這樣的東西,但我不確定它是否有效。get_resultpost_result_operationsfunc lambda_handler(event) { defer post_result_operations(event) return get_result(event)}任何幫助將不勝感激
1 回答

料青山看我應(yīng)如是
TA貢獻(xiàn)1772條經(jīng)驗 獲得超8個贊
如果您只想記錄日志,則可以查看 Lambda 擴展。但是,在函數(shù)退出后,您可以運行的時間有限。
Lambda 函數(shù)返回后,代碼將停止,因此之后可能發(fā)生的任何事情都不會發(fā)生。最好的方法是通過 SQS 之類的東西使處理異步。您可以將事件轉(zhuǎn)移到 SQS 隊列中,其他 Lambda 函數(shù)可以在該隊列中處理該事件,然后返回您的結(jié)果。像這樣:
func get_result(event) { return result(event) }
func send_to_sqs(event) { /* send the message to SQS */ }
func lambda_handler(event) {
send_to_sqs(event)
return get_result(event)
}
- 1 回答
- 0 關(guān)注
- 113 瀏覽
添加回答
舉報
0/150
提交
取消