需要使用 cloudformation、sam 和 serverless 框架来部署 nodejs 应用程序的专家的意见。
请告知我使用无服务器框架但没有使用 sam 或 cloudformation 的最佳路径,虽然我同意它简化了过程,但我希望了解更多关于底层配置的信息。
我倾向于 cloudformation 只是因为这两个框架都将代码转换为 cloudformation 模板。如果我错了,请纠正我,并感谢学习相同内容的最佳资源。
需要使用 cloudformation、sam 和 serverless 框架来部署 nodejs 应用程序的专家的意见。
请告知我使用无服务器框架但没有使用 sam 或 cloudformation 的最佳路径,虽然我同意它简化了过程,但我希望了解更多关于底层配置的信息。
我倾向于 cloudformation 只是因为这两个框架都将代码转换为 cloudformation 模板。如果我错了,请纠正我,并感谢学习相同内容的最佳资源。
SAM 基本上是 Cloudformation 的扩展。如果您了解 SAM,那么您基本上了解 Cloudformation。SAM 可以而且应该与 Cloudformation 一起用于本地测试。
无服务器是 Cloudformation 之上的一个抽象层。它有助于加快应用程序的创建和部署。如果您正在做更高级的配置,它就不足了
我总是倾向于 Cloudformation(或 SAM),因为它是由 CSP(即 AWS)提供的。这意味着所有新的东西都将自动可用,而不是等待抽象层(如无服务器)获得支持。
LostJon 是绝对正确的,因为 CloudFormation 和 SAM 的支持是立即可用的,因为它是由 AWS 本机提供的。我倾向于 CloudFormation,因为它具有确定性的结果,这在 DevOps 环境中是需要的。除非您将转换显式添加到 CloudFormation 堆栈,否则没有转换。
当您使用 SAM 部署 CloudFormation 模板时,您将能够在 AWS 控制台中查看 CloudFormation 模板,但您也可以选择显示渲染的模板(例如在转换后),以便了解 SAM 在水下为您做了什么。您可以复制呈现的资源并将它们用作纯 CloudFormation。这使您可以加快开发速度,同时不会失去底层配置知识的好处。
I recommend the Serverless Framework. The advantages are several:
sls deploy
)There is a sample project at my gitlab profile if you are interested (for GoLang but the principles are the same as for other runtimes) https://gitlab.com/montao/aws-lambda-go-gitlab-sls