Q96 — AWS SAA-C03 第14章
第 96/100 题 | ← 返回第14章
Q1096.一家公司有一个提取、转换和加载 (ETL) 作业,用于接收和处理大量消息.负载偶尔会在白天激增.ETL 作业使用本地托管的客户数据服务.该公司希望利用客户数据丰富传入的消息.但是,客户数据服务可以在管理大量请求时变得不稳定.解决方案必须保护客户数据服务免受超载.哪种解决方案能够以最少的运营开销满足这些要求?
- A. 创建 Amazon API Gateway HTTP API 作为客户数据服务的代理.启用 API Gateway 限制以减少请求数量.使用消息处理器中的 API,通过使用客户数据.
- B. 创建 Amazon API Gateway REST API 作为客户数据服务的代理.在客户识别密钥.使用消息处理器中的 API,利用客户数据丰富消息. ✓
- C. 将 al1 客户数据复制到 Amazon DynamoDB 表.在客户密钥上启用 Amazon API Gateway 缓存.创建 API Gateway REST API 作为代理以在 DynamoDB 中执行查找.
- D. 创建 Amazon API Gateway REST API 作为 AWS Lambda 函数的代理.配置 Lambda 函数以调用客户数据服务.为 Lambda 函数设置预留并发.
正确答案: B. 创建 Amazon API Gateway REST API 作为客户数据服务的代理.在客户识别密钥.使用消息处理器中的 API,利用客户数据丰富消息.
解析
A 或 B.为了确定在丰富 ETL 作业的传入消息的同时保护客户数据服务免于过载的最佳解决方案,让我们分析一下每个选项:A. 创建 Amazon API Gateway HTTP API 作为客户数据服务的代理.启用 API Gateway 限制以减少请求数量.使用消息处理器中的 API 通过使用客户数据来丰富消息.限制可以帮助管理对服务的请求数量,但它无法解决服务在负载下变得不稳定的根本问题.限制只是延迟或拒绝请求,这可能不适合实时 ETL 流程.B. 创建 Amazon API Gateway REST API 作为客户数据服务的代理.在客户标识密钥上启用 API Gateway 缓存.使用消息处理器中的 API 通过使用客户数据来丰富消息.API 网关缓存可通过缓存频繁请求的响应来显著减少客户数据服务的负载.当多次需要相同的客户数据时,此解决方案允许 ETL 作业快速从缓存中获取数据,从而保护后端服务不会因对相同数据的重复请求而超负荷.C. 将所有客户数据复制到 Amazon DynamoDB 表.在客户密钥上启用 Amazon API Gateway 缓存.创建 API Gateway REST API 作为代理以在 DynamoDB 中执行查找.虽然 DynamoDB 是一个高度可扩展的数据库,但将所有客户数据复制到 DynamoDB 会带来额外的复杂性和成本,包括数据同步和存储费用.此选项可能不是最具成本效益或运营开销最低的解决方案,尤其是在客户数据频繁更新的情况下.D. 创建 Amazon API Gateway REST API 作为 AWS Lambda 函数的代理.配置 Lambda 函数以调用客户数据服务.为 Lambda 函数设置预留并发.Lambda 的保留并发性可以帮助管理并发执行的数量,但它无法解决客户数据服务在负载下的不稳定性问题.如果服务不是为处理高并发性而设计的,Lambda 函数仍然需要调用该服务,这可能会使该服务不堪重负.考虑到需要以最少的运营开销保护客户数据服务免于过载,选项 B 是最合适的解决方案:选项 B 利用 API 网关缓存来减少对客户数据服务的请求数量.这是有效的,因为它允许从缓存中提供对相同数据的频繁请求,从而减少后端服务的负载.API Gateway 缓存的配置和管理非常简单,几乎不增加运营开销.使用 API Gateway REST API 作为代理对现有架构的更改很少,并且可以与消息处理器无缝集成以丰富传入消息.因此,公司应使用选项 B 来以最少的运营开销满足要求.