【问题标题】:Concerning with AWS Scalability with Serverless framework关于使用无服务器框架的 AWS 可扩展性
【发布时间】:2021-08-11 02:17:22
【问题描述】:
当我将无服务器框架代码库部署到 AWS 时,我很好奇哪种方法会更好。
目前,有 2 个选项。
- 使用 Nest.js 或 Express.js,因此我将一个函数部署到 Lambda,该函数将处理所有 API 端点
- 部署多个函数,使每个函数代表一个 API 端点
关于可扩展性,哪个选项是好的方法?
【问题讨论】:
标签:
node.js
amazon-web-services
aws-lambda
serverless-framework
【解决方案1】:
第二个选项总是更好。为每个功能创建多个 lambda 函数。
Lambda 延迟取决于从 API 网关获得的调用次数。如果您使用多个端点和单个 lambda 调用,那么它将成为瓶颈或高延迟问题。加上基于每个 lambda 调用的 lambda 费用。如果您将一个 lambda 用于所有用途并提前达到此限制,则每个 lambda 100 万个请求都是免费的。
建议为每个功能使用不同的 lambda 函数,这就是微服务的美妙之处。保持简单和轻便。
【解决方案2】:
Lambda 函数的主要优势之一是您的应用程序中的功能可独立扩展。
您不仅可以通过这种方式实现独立的可扩展性,还可以潜在地实现成本节约。