gpt4 book ai didi

node.js - Nodejs 模块化 aws-sdk v3 大小越来越大

转载 作者:行者123 更新时间:2023-12-05 06:03:59 24 4
gpt4 key购买 nike

我正在尝试减小使用 aws-sdk 的 nodejs lambda 包的大小。这是原始的 lambda package.json 文件:

{
"name": "lambdanodejs",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"dependencies": {
"aws-sdk": "^2.784.0",
"bluebird": "^3.7.2",
"ioredis": "^4.19.2",
"redis": "^3.0.2",
"redis-clustr": "^1.7.0"
}
}

整体大小为57MB,54属于aws-sdk。

为了减小尺寸,我尝试使用特定的客户端服务 (v3 sdk)。已关注:https://github.com/aws/aws-sdk-js-v3/blob/main/clients/client-secrets-manager/package.json

{
"name": "lambdanodejs",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"dependencies": {
"@aws-sdk/client-dynamodb": "^3.7.0",
"@aws-sdk/client-secrets-manager": "^3.7.0",
"bluebird": "^3.7.2",
"ioredis": "^4.19.2",
"redis": "^3.0.2",
"redis-clustr": "^1.7.0"
}
}

现在 npm install 的结果更大,大约 190+MB。同样在 node_modules 中,我看到很多目录在使用以前的 package.json 安装时不存在。这个 v3 aws-sdk 应该更轻。我错过了什么吗?

谢谢!

最佳答案

  • 不要将 aws-sdk 推送到 lambda 函数。如果您想在本地开发环境中使用它,请将其全局安装。
  • Lambda 将在运行时提供所有必要的 SDK 模块(v2 和 v3),只需在代码中导入它们即可。
  • 不要将 aws-sdk 捆绑在 zip 中。
  • 如果您的 zip 大小越来越大,请在 lambda 中使用图层。
  • 将 node_moudles 导入 lambda 层。
  • 然后将您的代码上传到 lambda。

关于node.js - Nodejs 模块化 aws-sdk v3 大小越来越大,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66488378/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com