View a markdown version of this page

AWS 中的并行 API 组合 - AWS 中的并行 API 组合

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

AWS 中的并行 API 组合

发布日期:2022年 5月17日 (图表历史)

该架构展示了如何并行或按顺序调用多个下游 API 端点以构成单个聚合响应。您可以使用 AWS Step Functions Express Workflows 构建通用、参数化的断路器工作流程,并使用命令查询责任分离 (CQRS) 来维护持久的、最终一致的缓存。

AWS 中的并行 API 组合

架构图显示了使用亚马逊 API 网关、 AWS Step Functions Express Workflows 和亚马逊的并行 API 组合 EventBridge。 AWS Lambda

以下步骤描述了架构:

  1. 使用亚马逊 API 网关创建 API 网关,允许客户端向您的微服务发送同步 Web 请求。

  2. 使用 Step Functions Express Workflows 创建具有并行步骤的工作流,可同时调用多个微服务。

  3. 使用AWS Lambda函数将来自下游微服务的多个响应组合成单个聚合响应,供客户端使用。

  4. 使用基于参数化嵌套的 Step Functions Express Workflows 构建的断路器处理并行请求,以提高弹性。

  5. 调用本地微服务时,使用 API 网关代理 HTTP 请求。

  6. 创建 Amazon MemoryDB for Redis 数据库,以使用直写缓存模式缓存微服务响应。https://docs.aws.amazon.com/whitepapers/latest/database-caching-strategies-using-redis/caching-patterns.html当下游微服务不可用或其延迟达到阈值时,该电路将关闭并直接从缓存中读取所有响应。

  7. 使用 CQRS 模式使用来自下游微服务的域事件来补充缓存的数据。使用 Amazon 创建事件总线 EventBridge,然后使用 Lambda 函数处理事件,将域聚合保存在 MemoryDB 中。

  8. 启用 API Gateway 响应缓存并根据每种请求类型调整生存时间 (TTL) 值和过滤器以提高性能。

延伸阅读

有关更多信息,请参阅以下资源:

图表历史

要获得有关此参考架构图更新的通知,请订阅 RSS 提要。

变更说明日期

初次发布

参考架构图首次发布。

2022 年 5 月 17 日

注意

要订阅 RSS 更新,必须为正在使用的浏览器启用 RSS 插件。