在前面的章节中,我们学习了如何在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.
最长执行时间
超时是分配给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中创建一个函数如图所示.
第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函数的输出如下所示 :