ema*_*ara 6 nodes aws-sdk aws-lambda
我的团队正在创建一个遵循无服务器架构的项目,我们正在使用 AWS Lambda、NodeJS 和无服务器框架。应用程序将是一组服务,每个服务都将作为单独的功能进行处理。
我发现在同一个项目下组合多个函数然后使用云形成一次部署的例子,但有一些我们不想要的缺陷,比如为每个 lambda 函数部署不同模块的资源,这会导致一些冗余,如果我们想要更改一个文件,它不会反映在所有 lamda 函数中,因为它是托管 lamda 函数的本地文件
https://github.com/serverless/examples/tree/master/aws-node-rest-api-with-dynamodb
我的问题:您是否知道组织包含多个功能的项目的最佳方法,每个功能都有其独立的.yaml
配置,并且能够在需要时部署所有这些功能或指定要部署的选择性更新功能?
我想我找到了一种像这里提到的那样的好方法:https : //serverless.readme.io/docs/project-structure
我创建了一个包含一些 Labmda 函数的服务,每个函数都包含在一个单独的文件夹中,而且我在根级别有一个 lib 文件夹,其中包含可以在我的 Lambda 函数中使用的所有常见模块。
所以我的结构看起来像:
Root ---
functions----
function1
function2
libs---
tests--
resources
serverless.yml (root level)
Run Code Online (Sandbox Code Playgroud)
在我的 yml 文件中,我指向具有相对路径的 Lamdas,例如:
functions:
hello1:
handler: functions/function1/hello1.hello
Run Code Online (Sandbox Code Playgroud)
现在我可以使用一个无服务器命令部署所有功能,或者有选择地部署更改功能的特异性
并且部署的 Lamda 将只包含所需的代码
归档时间: |
|
查看次数: |
9246 次 |
最近记录: |