A company runs an e-commerce application on Amazon EC2 instances behind an Application Load Balancer. The instances run in an Amazon EC2 Auto Scaling group across multiple Availability Zones. The Auto Scaling group scales based on CPU utilization metrics. The ecommerce application stores the transaction data in a MySQL 8.0 database that is hosted on a large EC2 instance.
The database's performance degrades quickly as application load increases. The application handles more read requests than write transactions. The company wants a solution that will automatically scale the database to meet the demand of unpredictable read workloads while maintaining high availability.
Which solution will meet these requirements?
A. Use Amazon Redshift with a single node for leader and compute functionality.
B. Use Amazon RDS with a Single-AZ deployment Configure Amazon RDS to add reader instances in a different Availability Zone.
C. Use Amazon Aurora with a Multi-AZ deployment. Configure Aurora Auto Scaling with Aurora Replicas.
D. Use Amazon ElastiCache for Memcached with EC2 Spot Instances.
C
技巧:排除明顯錯誤選項,在沒有明顯錯誤的選項中選擇最合理的選項。
某公司在Amazon EC2實例上運行電子商務應用,該應用通過應用負載均衡器(Application Load Balancer)訪問,并且實例在跨多個可用區的Amazon EC2 Auto Scaling組中運行,隨著應用負載的增加,其MySQL 8.0數據庫性能迅速下降。該應用處理的讀請求多于寫事務,該公司希望找到一種能夠自動擴展數據庫以滿足不可預測的讀工作負載需求,同時保持高可用性的解決方案。
A. 不正確。使用具有領導和計算功能的單節點Amazon Redshift。Amazon Redshift 是一種數據倉庫服務,主要用于大規模數據分析和報告,而不是用于處理高并發的 OLTP(在線事務處理)工作負載。此外,單節點配置不適合處理高可用性和自動擴展的需求。
B. 不正確。使用單可用區(Single-AZ)部署的 Amazon RDS 。配置 Amazon RDS 以在不同可用區中添加只讀實例。Amazon RDS 支持添加只讀副本以分擔讀負載,但單可用區部署缺乏高可用性。如果主實例所在的可用區發生故障,整個數據庫將不可用。此外,手動添加只讀實例并不能滿足自動擴展的需求。
C. 正確。使用多可用區(Multi-AZ)部署的 Amazon Aurora。配置Aurora自動擴展和Aurora副本。Amazon Aurora 是 AWS 的托管關系數據庫服務,兼容 MySQL 和 PostgreSQL。Multi-AZ 部署提供了高可用性,可以在主實例發生故障時自動切換到備用實例。Aurora 自動擴展功能可以根據負載自動添加或移除 Aurora 副本,可以滿足不可預測的讀工作負載需求。
D. 不正確。使用 Amazon ElastiCache for Memcached 與 EC2 Spot 實例。Amazon ElastiCache 是一種內存緩存服務,可以加速應用程序的讀取性能。然而,它并不能替代數據庫,而是作為數據庫的緩存層使用。此外,使用 EC2 Spot 實例雖然可以降低成本,但 Spot 實例可能會被 AWS 回收,不適合用于需要持續高可用性的數據庫場景。