- AWS Lambda 教程
- AWS Lambda - 主页
- AWS Lambda - 概述
- AWS Lambda - 环境设置
- AWS Lambda - 简介
- 构建 Lambda 函数
- NODEJS 中的函数
- Java 中的函数
- Python 中的函数
- Go 中的函数
- C# 中的函数
- 配置 Lambda 函数
- 使用 AWS 控制台创建和部署
- 使用 AWS CLI 创建和部署
- 使用无服务器框架创建和部署
- AWS 执行和调用 Lambda 函数
- 删除 Lambda 函数
- 使用 Amazon API Gateway
- 使用 Amazon S3 的 Lambda 函数
- 使用 Amazon DynamoDB 的 Lambda 函数
- 具有预定事件的 Lambda 函数
- 带有 Amazon SNS 的 Lambda 函数
- 带有 CloudTrail 的 Lambda 函数
- 使用 Amazon Kinesis 的 Lambda 函数
- 具有自定义用户应用程序的 Lambda 函数
- AWS Lambda@Edge 与 CloudFront
- 使用 Cloudwatch 进行监控和故障排除
- AWS Lambda - 其他示例
- AWS Lambda 有用资源
- AWS Lambda - 快速指南
- AWS Lambda - 有用的资源
- AWS Lambda - 讨论
AWS Lambda – 配置 Lambda 函数
在前面的章节中,我们学习了如何在AWS控制台中创建AWS Lambda函数。但是,还有其他参数可用于创建 Lambda 函数。其中包括内存分配、超时等。
在本章中,让我们详细了解 AWS Lambda 的以下配置属性。
内存分配
登录 AWS 控制台并创建或选择现有的 lambda 函数。单击“配置”选项卡可获取分配的内存的详细信息。看下面显示的屏幕截图 -
请注意,默认分配的内存为128MB。如果您想增加内存,可以单击滑块。
当您移动滑块时,内存将增加到64MB 。请注意,最大可用内存为3008MB。看下面显示的屏幕截图 -
您还可以从命令提示符使用aws cli来增加内存限制。您必须以 64MB 为增量提供内存。
现在,让我们增加名称为myfirstlambdafunction的 AWS Lambda 的内存限制。
该函数的内存详细信息如下面的屏幕截图所示 -
使用aws cli更改内存的命令如下 -
aws lambda update-function-configuration --function-name your function name -- region region where your function resides --memory-size memory amount -- profile admin user
此处显示了 AWS 控制台中AWS Lambda 函数myfirstlambdafunction的相应输出。观察内存从128MB变为256MB。
最大执行时间
超时是分配给 AWS Lambda 函数的时间,以便在发生超时时终止。AWS Lambda 函数将在分配的时间内运行,或者在超过给定的超时时终止。您需要评估函数执行所需的时间,并在AWS 控制台的“配置”选项卡中相应地选择时间,如下所示 -
IAM 角色
创建AWS Lambda函数时,需要分配角色或权限。如果您需要适用于 S3 或 dynamoDB 的 AWS Lambda,则需要分配与 lambda 服务相关的权限。根据分配的角色,AWS Lambda 将决定要采取的步骤。例如,如果您授予 dynamodb 的完全访问权限,您可以添加、更新和删除 dynamodb 表中的行。
处理者名称
这是AWS Lambda 函数的执行开始。处理程序函数包含触发的事件、上下文对象和回调的详细信息,该回调必须在AWS Lambda成功或错误时发回。
Nodejs 中处理函数的格式如下所示 -
exports.handler = (event, context, callback) => { callback(null, "hello from lambda"); };
使用环境变量的 Lambda 函数
在本部分中,我们将使用配置部分中添加的环境变量创建一个简单的 Lambda 函数。为此,请按照下面给出的步骤并参考相应的屏幕截图 -
步骤1
转到 AWS 控制台并在 Lambda 中创建一个函数,如图所示。
第2步
现在,添加环境变量,如下所示 -
步骤3
现在,让我们在 Lambda 代码中获取相同的内容,如下所示 -
exports.handler = (event, context, callback) => { var hostName = process.env.host; var userName = process.env.username; callback(null, "Environment Variables =>"+hostName+" and "+userName); };
步骤4
要从环境变量中获取详细信息,我们需要使用process.env,如图所示。请注意,此语法适用于NodeJS运行时。
var hostName = process.env.host; var userName = process.env.username;
步骤5
执行时 Lambda 函数的输出如下所示 -