首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从Lambda函数中将火和忘了上传到S3

从Lambda函数中将火和忘了上传到S3
EN

Stack Overflow用户
提问于 2021-09-30 23:27:38
回答 1查看 217关注 0票数 1

我有一个lambda函数,在计算完成后,会发出一些调用将元数据存储在S3和DynamoDB上。

S3上传步骤是函数中最大的瓶颈,所以我想知道是否有办法“触发并忘记”这些调用,以便在函数返回之前不必等待它们。

目前,我正在使用异步并行运行所有上传调用,但是boto3 3/s3 put_object调用仍然是一个很大的瓶颈。我试着使用asyncio.create_task运行协同,而没有等待它们完成,但正如预期的那样,我得到了一堆Task was destroyed but it is pending!错误,而上传实际上并不经过。

如果有办法做到这一点,我们可以节省很多账单,因为正如我所说的,S3是最大的瓶颈。这是可能的,还是我必须处理S3上传时间?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-09-30 23:45:01

如果有办法的话,

遗憾的是,没有,除非您要使用其他lambda功能来做您的上传。这样,您的主要功能将委托耗时的文件处理,并以异步方式上传到第二个函数。然后,您的主函数可以立即返回给调用方,而第二个函数在后台完成这项繁重的工作。

无论哪种方式,您都必须支付第一个或第二个函数的执行时间。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69399774

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档