Q53 — AWS SAA-C03 第1章
第 53/65 题 | ← 返回第1章
Q53.一家公司希望将多层应用程序从本地迁移到 AWS 云以提高应用程序的性能.该应用程序由通过 RESTful 服务相互通信的应用程序层组成.当一层变得过载时,事务将被丢弃.解决方案架构师必须设计解决这些问题并使应用程序现代化的解决方案.哪种解决方案满足这些要求并且是最高效的运营方式?
- A. 使用 Amazon API Gateway 并将事务定向到作为应用层的 AWS Lambda 函数.使用 Amazon Simple Queue Service (Amazon SQS) 作为应用程序服务之间的通信层. ✓
- B. 使用 Amazon CloudWatch 指标分析应用程序性能历史记录以确定性能故障期间服务器的峰值利用率.增加应用服务器的 Amazon EC2 实例的大小以满足峰值要求.
- C. 使用 Amazon Simple Notification Service (Amazon SNS) 处理在 Auto Scaling 组中的 Amazon EC2 上运行的应用程序服务器之间的消息传递.使用 Amazon CloudWatch 监控 SNS 队列长度并根据需要扩大和缩小规模.
- D. 使用 Amazon Simple Queue Service (Amazon SQS) 处理在 Auto Scaling 组中的 Amazon E02 上运行的应用程序服务器之间的消息传递.使用 Amazon CloudWatch 监控 SQS 队列长度并在检测到通信故障.
正确答案: A. 使用 Amazon API Gateway 并将事务定向到作为应用层的 AWS Lambda 函数.使用 Amazon Simple Queue Service (Amazon SQS) 作为应用程序服务之间的通信层.
解析
对于这种情况,最有效的解决方案是选项A: 使用Amazon API Gateway将事务直接发送到AWS Lambda函数作为应用层,可以实现高度可扩展和无服务器的体系结构。这可以自动处理流量突发,而无需手动扩展或过度配置。使用Amazon Simple Queue Service (Amazon SQS)作为应用程序服务之间的通信层,可以提供可靠且容错的消息传递系统,可以处理临时的流量峰值。 选项B没有那么高效,因为手动分析性能历史和增加EC2实例大小可能导致过度配置和更高的成本。 选项C也使用Amazon SNS进行消息传递,但不提供与Amazon SQS相同级别的可伸缩性和可靠性。此外,基于SNS队列长度的上下缩放可能不是总体系统负载的可靠指标。 选项D使用Amazon SQS进行消息传递,但不满足RESTful服务或应用程序体系结构现代化的需求。此外,仅在检测到通信故障时进行扩展可能不足以处理突然的流量峰值。