第037题 - sap

船帆座超新星遗迹

图片来源:CTIO、NOIRLab、DOE、NSF、AURA;

处理:T. A. Rector (U. Alaska Anchorage), M. Zamani & D. de Martin (’s NOIRLab)

说明:爆炸已经结束,但其产生的影响仍在继续发展。大约一万年前,船帆座中的一颗恒星爆炸,产生了一个奇怪的光点,这一点光在历史记录初期的人类可短暂看见。恒星的外层撞击星际介质,产生的冲击波至今仍然可见。这张图像捕捉到了可见光下的一些丝状巨大冲击。当气体飞离爆炸的恒星时,它会衰变并与星际介质发生反应,产生许多不同颜色和能带的光。留在船帆座超新星遗迹中心的是一颗脉冲星,这是一颗密度如核物质的恒星,每秒自转十多次。

sap037-202412030057021

问题翻译 (Question Translation)

一家公司正在本地环境中托管一个三层 web 应用程序。由于最近流量激增导致的停机,管理层已下令将应用迁移到 AWS。该应用程序使用 .NET 编写,并依赖于 MySQL 数据库。解决方案架构师必须设计一个可扩展和高可用的解决方案,以满足 200,000 个日活跃用户的需求。解决方案架构师应该采取哪些步骤来设计合适的解决方案?


选项分析 (Answer Analysis)

选项 A

使用 AWS Elastic Beanstalk 创建一个新的应用程序,包含 web 服务器环境和 Amazon RDS MySQL Multi-AZ 数据库实例。环境应在多个可用区启动 Network Load Balancer (NLB)。使用 Amazon Route 53 别名记录将流量路由到 NLB。

  • 分析:
    • 优点: Elastic Beanstalk 简化了应用程序部署,且 Multi-AZ RDS 提供高可用性。
    • NLB 能够适应高流量情况,交易延迟低。
    • 完整的堆栈管理 简便性高,且能够轻松扩展。

选项 B

使用 AWS CloudFormation 启动一个包含应用负载均衡器 (ALB) 的堆栈,跨越三个可用区。堆栈应启动一个 Multi-AZ 部署的 Amazon Aurora MySQL 数据库集群,并带有保留删除策略。使用 Amazon Route 53 别名记录将流量路由到 ALB。

  • 分析:
    • 优点: CloudFormation 提供了可重复性,并易于管理。
    • Aurora 为 MySQL 提供更高的性能与可扩展性,适合高并发需求。
    • ALB 支持复杂的流量路由和健康检查,能够优化请求分配。

选项 C

使用 AWS Elastic Beanstalk 创建一个自动扩展的 web 服务器环境,跨越两个不同区域,并在每个区域创建应用负载均衡器 (ALB)。创建一个 Multi-AZ 部署的 Amazon Aurora MySQL 数据库集群,并支持跨区域的读取副本。使用 Amazon Route 53 结合地理路由策略路由流量。

  • 分析:
    • 缺点: 增加了复杂性和费用,因涉及到跨区域的架构。
    • 适用于需要额外冗余和可用性的情境,但对于实际需求可能覆盖了不必要的复杂性。

选项 D

使用 AWS CloudFormation 启动一个包含应用负载均衡器 (ALB) 的堆栈,跨越三个可用区。堆栈应启动一个 Amazon RDS MySQL 数据库实例,并提供快照删除策略。使用 Amazon Route 53 别名记录将流量路由到 ALB。

  • 分析:
    • 缺点: 使用快照删除策略可能缺乏高可用性保障,且单一 RDS 实例可能成为单点故障。
    • 不适合高流量要求,无法满足高可用和可扩展性需求。

最佳答案 (Correct Answer)

答案:B


详细解析 (Detailed Explanation)

  1. 为什么选择 B?

    • 高可用性与可扩展性: Aurora 提供更高的性能和更好的可用性,Multi-AZ 部署提供故障转移能力。
    • CloudFormation 能够 提供基础设施即代码管理的优雅解决方案,使得环境搭建更加可靠。
  2. 为什么不选择其他选项?

    • A: 尽管 Elastic Beanstalk 极大地简化了操作,但在高并发下,Aurora 的性能可能更具优势。
    • C: 跨区域架构增加了管理复杂性与费用,而并非必须的。
    • D: RDS 单一实例风险高,缺乏可用性保障,不符合需求。

总结 (Summary)

选择 B 是符合高可用性、可扩展性和管理便利性的最佳解决方案,能够顺利满足每日 200,000 用户的流量需求。

如有其他问题,请继续询问!