【问题标题】:APIG/Lambda for hosting multiple micro servicesAPIGW/Lambda 用于托管多个微服务
【发布时间】:2021-02-23 22:46:01
【问题描述】:
AWS 对托管多个微服务的建议是什么?我们可以将它们全部托管在同一个 APIG/Lambda 上吗?使用这种方法,我看到什么时候想要更新一个服务的 API,然后我们正在部署所有服务的 API,这意味着我们的回归将包括测试所有服务的访问。另一方面,为每个服务创建单独的 APIG/Lambda,我们最终将需要管理多个资源(和多个帐户),以后会成为运营负担吗?
【问题讨论】:
标签:
amazon-web-services
aws-lambda
aws-api-gateway
【解决方案1】:
微服务是自主开发的,应该独立地构建、测试、部署、扩展......有很多方法可以做到这一点,以及如何将产品拆分为多个服务。例如,一种模式是将 API 网关作为其后面所有服务的前门,因此它将是它自己的服务。
一个 lambda 通常执行一个任务,一个服务可以由多个 lambda 组成。我什至看不到如何从同一个 lambda 执行多个服务。
如果没有适当的工具和流程来以自动化和可扩展的方式管理所有系统,这可能是一个特别的负担。任何架构都有利有弊,但无服务器应用程序的复杂性肯定会降低,因为所有计算都由 AWS 管理。
AWS 实际上有一个 whitepaper 讨论 AWS 上的微服务。