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

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

微服务编排

微服务体系结构将应用程序分解为松散耦合的服务。优势包括改进的可扩展性、增强的恢复能力和加快上市时间。每个微服务都是独立的,因此可以轻松扩展单个服务或功能,而无需扩展整个应用程序。单个服务松散地结合起来,使独立团队能够专注于单个业务流程,而无需他们了解整个应用程序。微服务还允许您选择适合您业务需求的单个组件,让您可以灵活地更改选择,而无需重新编写整个工作流程。不同的团队可以使用他们选择的编程语言和框架来处理他们的微服务,这种微服务仍然可以通过应用程序编程接口 (API) 与应用程序中的任何其他微服务进行通信。

Step Functions 为您提供了多种管理微服务工作流的方法。对于长时间运行的工作流,您可以将标准工作流与Amazon Fargate集成来协调在容器中运行的应用程序。对于需要立即响应的短期大量工作流程,同步快速工作流是理想的。这些应用程序可用于基于 Web 或移动应用程序,这些应用程序通常具有持续时间较短的工作流,并且需要在返回响应之前完成一系列步骤。您可以从 Amazon API Gateway 直接触发同步快速工作流,连接将保持打开状态,直到工作流完成或超时为止。对于不需要立即响应的短持续时间工作流,Step Functions 提供异步快速工作流。

一些使用 Step Functions 的 API 协调示例包括:

同步或实时工作流

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

  • 在结算期间更新订单,例如添加、删除或更改商品数量,然后立即将更新反映给客户。

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

容器编排

  • 使用亚马逊弹性 Kubernetes 服务或亚马逊弹性容器服务 (ECS) 与 Fargate 运行作业,并与其他Amazon服务(例如,通过 Amazon SNS 发送通知)作为同一工作流程的一部分。