使用 ffmpeg 的 AWS Lambda tmp 磁盘限制

阿尔马朱

我正在使用 AWS Lambda 使用 ffmpeg 呈现视频。这是下载外部剪辑、合并这些剪辑、然后将结果上传到 S3 的基本功能。

此功能需要能够快速扩展,因为我需要在短时间内生成大量视频。

问题是我达到了/tmp512MB 的磁盘限制,因为不同的请求重用了相同的 lambda 环境。我增加了内存限制以暂时解决问题,但感觉不可扩展。

我已经研究过 EFS,但是对于我的简单需求来说,使用 VPC 和 NAT 来访问 Internet 的要求听起来确实很繁重。

有没有办法直接在 S3 中输出 ffmpeg 的结果(因此不需要临时文件夹)?或者如果内存快满了,可能会强制重新生成一个干净的 lambda 环境?

jarmod

请参阅AWS Lambda 现在支持高达 10 GB 的临时存储

AWS Lambda 现在允许您配置介于 512 MB 和 10,240 MB 之间的临时存储 (/tmp)。您现在可以控制函数用于读取或写入数据的临时存储量,允许您将 AWS Lambda 用于 ETL 作业、ML 推理或其他数据密集型工作负载。

请注意,您的 Lambda 函数的每次调用都可以安全地删除其中存在的文件/tmp- 您永远不会有两个使用相同运行时环境的并发 Lambda 调用。那里存在的任何文件都是从先前的、现在已完成的 Lambda 函数调用中遗留下来的。如果不需要将文件从一个 Lambda 调用共享到下一个,那么您的 Lambda 函数可以在退出之前删除这些文件,以确保下一个调用具有干净的/tmp文件夹。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章