gpt4 book ai didi

amazon-web-services - AWS Lambda 与 EC2 : Which one to choose

转载 作者:行者123 更新时间:2023-12-04 02:46:18 25 4
gpt4 key购买 nike

我正在尝试将部署在 EC22 上的登录服务设为无服务器。
但我不确定通过 AWS API Gateway 公开的 AWS Lambda 或无服务器是否适合登录用例,成功登录后将返回 accesstoken .

这是该微服务的唯一职责。

而且我不确定 Lambda 对负载测试和大量 http 请求的表现如何。

而且,我们还需要低响应时间。

您能否让我知道 Lambda 如何扩展以及这是正确的用例吗?

最佳答案

根据评论中的讨论,我现在为此添加一个完整的答案,因为这并不适合发表评论。

您提到您当前的服务是 已经在 EC2 上运行 并且您想将其转移到无服务器解决方案。此外,您提到了“通过 API 网关公开的 Lambda 或无服务器”选项。然后添加一些关于预期响应时间为 500 毫秒和 Lambda 执行 2 次 DynamoDB 调用的附加信息。

我将按顺序解决这些问题:

EC2 与无服务器解决方案:

您似乎已经决定尝试无服务器路由,原则上它对于您所描述的微服务类型架构非常有效。我不会在这里过多关注 EC2 解决方案的优点。无服务器可以带来以下好处(除其他外):

  • 成本效益:您只需为代码在运行时消耗的资源而不是空闲时间付费
  • 可扩展性:Lambda 可水平、快速且轻松地扩展——您基本上不用担心(最多 1000 个并行“实例”)
  • 降低运营开销:无需修补操作系统 - AWS 会为您处理这些问题
  • 专注于您的业务逻辑,将管理基础设施的繁重工作交给 AWS

  • 通过 API 网关公开的 Lambda 或无服务器

    无服务器并不是真正的 AWS 服务,而是一种范式或架构模式,因此这些选项并不完全有意义 - 无论何时发生事件(读取:HTTP 请求),您都可以使用 API 网关来触发 Lambda 函数。这意味着您将设置一个完全托管的 REST 端点 (API-Gateway) 以按需调用您的代码 (Lambda)。

    关于性能

    对于您所描述的用例来说,500 毫秒的响应时间是现实的 - DynamoDB 公布了一位数毫秒的延迟,因此在 500 毫秒内两次调用它应该不成问题。不幸的是,Lambda 冷启动是一回事。 Lambda 通过 横向扩展平行请求,这意味着如果您的函数没有足够的热实例来满足您的请求,则会提供一个新的 Micro-VM。这需要时间,但在您的用例中这应该不是问题,因为您不需要访问 VPC(在这种情况下需要几秒钟)。

    与 EC2 实例相比,Lambda 的性能有限,您可以通过指定函数分配的 RAM 量来扩展 Lambda 提供的性能量(CPU 资源根据 RAM 提供)。对于一个简单的登录服务,这也不应该是一个问题。

    我建议您阅读我在 Lambda 文档中提到的要点(非常好)。

    关于amazon-web-services - AWS Lambda 与 EC2 : Which one to choose,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57130907/

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