为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 aws lambda 中返回函数结果并执行其他操作

如何在 aws lambda 中返回函数结果并执行其他操作

Go
鸿蒙传说 2022-08-30 22:04:44
假设我有以下工作流程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)}有没有办法创建一个lambda函数,这样我就可以调用该函数并返回其值,然后执行.这个想法是,我想通过API调用我的lambda函数,让函数快速返回结果,然后在返回结果后执行其他操作。有没有办法在nodejs或Golang中实现这一点。在Golang中,我们可以有类似这样的东西,但我不确定它是否有效。get_resultpost_result_operationsfunc lambda_handler(event) {     defer post_result_operations(event)     return get_result(event)}任何帮助将不胜感激
查看完整描述

1 回答

?
料青山看我应如是

TA贡献1772条经验 获得超8个赞

如果您只想记录日志,则可以查看 Lambda 扩展。但是,在函数退出后,您可以运行的时间有限。


Lambda 函数返回后,代码将停止,因此之后可能发生的任何事情都不会发生。最好的方法是通过 SQS 之类的东西使处理异步。您可以将事件转移到 SQS 队列中,其他 Lambda 函数可以在该队列中处理该事件,然后返回您的结果。像这样:


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)

}


查看完整回答
反对 回复 2022-08-30
  • 1 回答
  • 0 关注
  • 119 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号