Amazon API Gateway 和 Spring 云网关用例

use*_*951 4 microservices aws-lambda aws-api-gateway spring-cloud-gateway spring-cloud-function

我正在开发一个分布式应用程序项目,其中需要根据在 api 网关上使用服务的客户端进行速率限制和身份验证。我想知道设计网关的最佳解决方案。

我应该使用 Spring Cloud gateway 还是 Spring Cloud function/AWS Lambda 来创建网关服务?

ser*_*sti 6

我认为使用 AWS API Gateway 会让您的生活更轻松......

使用 AWS API Gateway 的好处是:

  • 它将消除维护、配置、监控和操作 Spring Cloud Gateway 实例的所有运营成本,
  • 它将具有高可用性,具有故障转移功能,
  • 它将为您提供即时功能,例如速率限制、API 密钥、缓存、授权、金丝雀测试、代理、集成映射、环境
  • 它非常非常便宜(3.50 美元 x MM 请求)。

使用Spring Cloud Function的好处:

  • 将 API 定义为应用程序代码本身中的代码
  • 例如,利用 Spring 内的生态系统集成,在开发人员的 PC 上本地运行它。

使用 API 网关的缺点:

  • 部署新的 API 将比使用 Spring Cloud Gateway 更困难(您需要配置每个新资源/方法)
  • 您的成本现在与请求数量挂钩......如果您有 900.000.000 百万/月的 API,它可能会变得昂贵
  • 供应商锁定

使用 Spring Cloud Function 的缺点:

  • 维护运营成本
  • 单点故障

  • API Gateway 的优点和缺点是相互冲突的。“非常便宜”然后“可能很贵”。那么到底是便宜还是贵呢? (2认同)