微服务编排 - Amazon Step Functions
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

微服务编排

微服务架构将应用程序分解为松耦合的服务。这样做的好处包括提高可扩展性、增强弹性和加快上市时间。每个微服务都是独立的,因此无需扩展整个应用程序,即可轻松纵向扩展单个服务或功能。各个服务皆为松耦合,这让独立团队可以专注于单个业务流程,而无需了解整个应用程序。微服务还允许您选择适合业务需求的单个组件,从而无需重写整个工作流,即可灵活地更改选择。不同的团队可以使用自己选择的编程语言和框架来处理他们的微服务,并且该微服务仍然可以通过应用程序编程接口 (API) 与应用程序中的任何其他微服务进行通信。

Step Functions 为您提供了多种管理微服务工作流的方法。对于长时间运行的工作流,您可以将标准工作流与 Amazon Fargate 集成一起使用,来编排在容器中运行的应用程序。对于需要即时响应的短期、高容量工作流,同步快速工作流是理想选择。该工作流可用于基于 Web 的应用程序或移动应用程序,此类应用程序的工作流通常持续时间较短,并且需要完成一系列步骤后才能返回响应。您可以直接从 Amazon API Gateway 触发同步快速工作流,在工作流完成或超时之前,连接将保持打开状态。对于不需要即时响应的短期工作流,Step Functions 还提供了异步快速工作流。

使用 Step Functions 的 API 编排示例包括:

同步或实时工作流

  • 更改记录中的值,例如更新员工的姓氏,并立即在屏幕上显示更改。

  • 在结账时更新订单,例如添加、移除或更改商品数量,然后立即将更新内容反馈给客户。

  • 运行快速处理任务,并立即将结果返回给请求者。

容器编排

  • 使用 Amazon Elastic Kubernetes Service 在 Kubernetes 上运行作业,或者使用 Fargate 在Amazon Elastic Container Service (ECS) 上运行作业,并与其他 Amazon 服务集成,例如通过 Amazon SNS 发送通知,作为同一工作流的一部分。