gpt4 book ai didi

aws-lambda - 将大型 AWS SAM 模板文件分解为更小、更易于管理的文件

转载 作者:行者123 更新时间:2023-12-03 07:22:05 25 4
gpt4 key购买 nike

我正在使用 AWS SAM 开发一个大型无服务器应用程序,模板文件变得如此庞大和复杂,以至于变得难以管理。我想将其分解为更小、更易于管理的文件,但我不确定执行此操作的最佳方法。

我听说嵌套堆栈可能是一种选择,但我不确定如何实现它们,或者是否有其他方法可以实现这一点。

将大型 AWS SAM 模板文件分解为更小、更易于管理的文件的最佳方法是什么?是否有任何最佳实践或推荐模式来执行此操作?在此过程中如何维护应用程序的整体结构和组织?

任何有关如何分解大型应用程序的 AWS SAM 模板的建议或示例将不胜感激。谢谢!

以下是我如何在 serverless.yml 中做到这一点的示例:

serverless.yml

service: example
frameworkVersion: "3"
useDotenv: true

functions:

${file(./services/authentication/functions.yml)}
${file(./services/posts/functions.yml)}

functions.yml


get-example:
image:
name: latest
command: example_service/app.lambda_handler
entryPoint:
- "/lambda-entrypoint.sh"
events:
- http:
path: example/get
method: get
cors: true
authorizer: authorizer

是否有办法实现 AWS SAM 模板的这种拆分?我研究过使用嵌套堆栈,但这似乎不是一个非常优雅的解决方案。

我还使用 serverless-compose 以更加模块化的方式管理我的 serverless.yml 文件。是否有类似的工具或技术可以与 AWS SAM 一起使用来实现类似的结果?

最佳答案

最后我发现嵌套堆栈是一种非常优雅的方法。因此,在搜索并观看 AWS YT 之后。推荐的方法是使用 NestedStack。

请引用这个github仓库https://github.com/aws-samples/sam-accelerate-nested-stacks-demo

这个存储库实际上非常好,它提供了一种非常有据可查的方法来执行大型应用程序,但一个限制是您只能管理 200 个资源。

在撰写本文时,我没有达到 200 资源,因此按照上述存储库的方式进行操作对我来说是安全的。

关于aws-lambda - 将大型 AWS SAM 模板文件分解为更小、更易于管理的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76078807/

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