6

我想知道使用/探索更多的方法,我目前正在探索选择最佳/合适的框架来在 AWS Lambda 上构建微服务的选项,而金丝雀部署是一个巨大的功能(SAM 支持它,但无服务器现在不支持)。以下是我的问题:

  1. 一般来说,选择 SAM 而不是 serverless 的优缺点是什么,反之亦然?
  2. 你可以在 serverless.yaml 中编写 SAM 吗?就像 SAM 有一些有用的功能,如果我们可以在无服务器中使用它们,那就太好了

谢谢

4

1 回答 1

15

AWS SAM

AWS 无服务器应用程序模型(至少目前)的重点是简化在 CloudFormation 中定义与无服务器技术堆栈(Lambda、API 网关等)相关的 AWS 资源。

SAM 有几个限制。它目前没有以灵活​​的方式为自定义授权者提供全面支持。与无服务器框架相比,DevOps 工具和插件支持也很少。

由于 SAM 是 AWS 原生的,因此对 AWS 功能的支持将比无服务器框架更早在 SAM 中提供。

无服务器框架

一个 DevOps 框架,允许以统一的方式简化 AWS、Azure、Google Cloud 和 IBM Open Wisk 的定义和部署。它在底层使用 CloudFormation 进行 AWS 无服务器堆栈配置,并附带插件生态系统以及执行 DevOps 任务的简单命令。

无服务器框架有几个限制

  • 为每个阶段部署新的 API 网关。
  • 无服务器框架结合了所有 Lambda 函数(如果在单个无服务器项目中定义了许多函数)并为所有函数部署所有代码,除非特别列入黑名单。
于 2017-12-03T19:13:25.737 回答