ِAl*_*ush 3 amazon-web-services aws-lambda serverless-framework aws-lambda-layers
我正在使用无服务器框架以及 lambda 层和几个 lambdas 函数。我必须包含 aws-sdk 才能支持某些功能。
aws-sdk 的 lambda 层大小为 80MB,而 aws-sdk 单独占用 40MB。
我所知道的是 Lambda 函数默认包含 aws-sdk。但这是否也意味着 lambda 层?
笔记
Lambda 层使您能够将额外的代码和内容提取到 AWS Lambda 函数的执行环境中。
默认情况下,Node.js Lambda 运行时环境为您提供 AWS JavaScript SDK 的一个版本。但作为最佳实践,并且实际上,因为您可能希望使用不属于 Lambda 执行环境中自动包含的版本的最新版本的 SDK 的较新功能,您可以打包所需的 AWS JavaScript SDK 版本稍后转换为 Lambda,以便它覆盖执行环境中存在的 SDK 版本。
就是这样:
mkdir lambda-layer
cd lambda-layer/
npm install aws-sdk
mkdir nodejs
mv node_modules/ nodejs/
zip -r aws-sdk.zip nodejs/
aws lambda publish-layer-version --layer-name aws-sdk --zip-file fileb://aws-sdk.zip --compatible-runtimes nodejs10.x --description "My AWS SDK"
Run Code Online (Sandbox Code Playgroud)
根据aws lambda publish-layer-version上面的输出报告,此 Lambda 层的大小为 6.1 兆字节。
| 归档时间: |
|
| 查看次数: |
1023 次 |
| 最近记录: |