开发手册 欢迎您!
软件开发者资料库

AWS Lambda - 配置Lambda函数

AWS Lambda配置Lambda函数 - 从简单和简单的步骤学习AWS Lambda,从基本到高级概念,包括概述,环境设置,简介,构建Lambda函数,NODEJS中的函数,Java,Python,Go,C#,配置Lambda函数,使用AWS控制台创建和部署,AWS CLI,无服务器框架,执行和调用,删除Lambda函数,使用Amazon API网关,使用Lambda函数和Amazon S3,Amazon DynamoDB,计划事件,Amazon SNS,CloudTrail,Amazon Kinesis,自定义用户应用程序,使用CloudFront的AWS Lambda @ Edge,使用Cloudwatch进行监控和故障排除,附加示例。

在前面的章节中,我们学习了如何在AWS控制台中创建AWS Lambda函数.但是,还有其他用于创建Lambda函数的参数.这些包括内存分配,超时等.

在本章中,让我们详细了解AWS Lambda的以下配置属性.

内存分配

登录AWS控制台并创建或选择现有的lambda函数.单击配置选项卡以获取分配的内存的详细信息.请看下面显示的屏幕截图 :

内存分配

请注意默认情况下,分配的内存 128MB .如果要增加内存,可以单击滑块.

移动滑块时,内存将增加到 64MB .观察到可用的最大内存 3008MB .看下面显示的截图 :

最大记忆

你可以也可以在命令提示符下使用 aws cli 来增加内存限制.你必须以64MB的增量给出内存.

现在,让我们增加AWS Lambda的内存限制,名称为: myfirstlambdafunction .

该函数的内存详细信息显示在下面给出的屏幕截图中;<

内存详细信息

用于使用 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.

Memory Command

最长执行时间

超时是分配给AWS Lambda函数的时间,如果超时发生则终止. AWS Lambda函数将在分配的时间内运行,或者在超过给定的超时时终止.您需要评估函数执行所需的时间,并相应地在AWS控制台的配置选项卡中选择时间,如下所示 :

最长执行时间

IAM角色

创建AWS Lambda函数时,角色或权限需要分配.如果您需要AWS Lambda for S3或dynamoDB,则需要分配有关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中创建一个函数如图所示.

Lambda Variables

第2步

现在,添加如下所示的环境变量 :

Lambda Environment

第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函数的输出如下所示 :

Lambda Function Execution