为 Lambda 函数配置短暂存储
Lambda 为 /tmp
目录中的函数提供短暂存储。此存储是临时的,并且对于每个执行环境都是独一无二的。您可以使用短暂存储设置来控制分配给函数的短暂存储量。您可以以 1MB 的增量将短暂存储配置在 512MB 与 10240MB 之间。存储在 /tmp
中的所有数据都是使用由 AWS 管理密钥进行静态加密。
本页介绍常见应用场景以及如何更新 Lambda 函数的短暂存储。
增加短暂存储的常见应用场景
以下是几个可从增加短暂存储中受益的常见应用场景:
-
提取-转换-加载(ETL)作业:当您的代码执行中间计算或下载其他资源以完成处理时,增加短暂存储。更多的临时空间允许在 Lambda 函数中运行更复杂的 ETL 作业。
-
机器学习(ML)推理:许多推理任务依赖于大型参考数据文件,包括库和模型。有了更多短暂存储,您可以从 Amazon Simple Storage Service(Amazon S3)将更大的模型下载到
/tmp
并将其用于处理。 -
数据处理:对于从 Amazon S3 下载对象以响应 S3 事件的工作负载,更多的
/tmp
空间使得无需使用内存中处理即可处理较大的对象。创建 PDF 或处理媒体的工作负载也将从更多短暂的存储中获益。 -
图形处理:图像处理是基于 Lambda 的应用程序的常见应用场景。对于处理大型 TIFF 文件或卫星图像的工作负载,更多的短暂存储可以更轻松地在 Lambda 中使用库和执行计算。
配置短暂存储(控制台)
您可以在 Lambda 控制台中配置临时存储。
要修改函数的临时存储
打开 Lamba 控制台的 Functions
(函数)页面。 -
选择函数。
-
选择配置选项卡,然后选择常规配置。
-
在常规配置下,选择编辑。
-
对于短暂存储,以 1MB 的增量将值设置在 512MB 与 10240MB 之间。
-
选择保存。
配置短暂存储(AWS CLI)
您可以使用 update-function-configuration
aws lambda update-function-configuration \ --function-name
my-function
\ --ephemeral-storage'{"Size": 1024}'
配置短暂存储(AWS SAM)
您可以使用 AWS Serverless Application Model 为您的函数配置短暂存储。更新 template.yaml
文件中的 EphemeralStorage 属性,然后运行 sam deploy。
例 template.yaml
AWSTemplateFormatVersion: '2010-09-09' Transform: AWS::Serverless-2016-10-31 Description: An AWS Serverless Application Model template describing your function. Resources:
my-function
: Type: AWS::Serverless::Function Properties: CodeUri: . Description: '' MemorySize: 128 Timeout: 120 Handler: index.handler Runtime: nodejs20.x Architectures: - x86_64 EphemeralStorage: Size:10240
# Other function properties...