Q50 — AWS SAP-C02 第2章
第 50/75 题 | ← 返回第2章
Q200. 一家公司希望通过迁移到 AWS 来管理一组 20 个关键应用程序的相关成本。这些应用程序是分布在不同实例集群中的 Java 和 Node.js 混合应用程序。该公司希望在使用单一部署方法进行标准化的同时最大限度地降低成本。大多数应用程序是月末处理例程的一部分,并发用户较少,但偶尔也会在其他时间运行。平均应用程序内存消耗不到 1 GB,但一些应用程序在峰值处理期间使用多达 5 GB 的内存。该组中最重要的应用程序是一个用 Java 编写的账单报告,它访问多个数据源,通常运行数小时。 哪种是最经济高效的解决方案?
- A. 为每个应用程序部署单独的 AWS Lambda 函数。使用 AWS CloudTrail 日志和 Amazon CloudWatch 告警来验证关键作业的完成
- B. 在配置了内存利用率 75% 的 Auto Scaling 的 Amazon EC2 上部署 Amazon ECS 容器。为每个要迁移的应用程序部署一个 ECS 任务并进行 ECS 任务扩展。使用 Amazon CloudWatch 监控服务和主机 ✓
- C. 为每个应用程序部署 AWS Elastic Beanstalk 并启用 Auto Scaling,以确保所有请求都有足够的资源。使用 CloudWatch 告警监控每个 AWS Elastic Beanstalk 部署
- D. 部署一个新的 Amazon EC2 实例集群,使用 EC2 Auto Scaling 和 Application Load Balancers 共同托管所有应用程序。根据实例内存利用率的自定义指标扩展集群大小。购买与 Auto Scaling 组的 GroupMaxSize 参数相等的 3 年预留实例
正确答案: B. 在配置了内存利用率 75% 的 Auto Scaling 的 Amazon EC2 上部署 Amazon ECS 容器。为每个要迁移的应用程序部署一个 ECS 任务并进行 ECS 任务扩展。使用 Amazon CloudWatch 监控服务和主机
解析
选项 A 建议为每个应用程序部署单独的 AWS Lambda 函数,但 Lambda 函数有最大内存限制,可能不适合在峰值处理期间需要超过 2.5 GB 内存的应用程序。选项 C 建议为每个应用程序部署 AWS Elastic Beanstalk,创建额外的抽象层,可能不够经济高效。 选项 D 建议部署共同托管所有应用程序的新 EC2 实例集群,虽然可行,但在单个实例上运行多个应用程序会增加复杂性并降低灵活性。 因此,选项 B 是标准化部署方法和最大限度降低成本的最经济高效的解决方案。在配置了 75% 内存利用率 Auto Scaling 的 Amazon EC2 上部署 Amazon ECS 容器,并为每个要迁移的应用程序部署具有 ECS 任务扩展的 ECS 任务,可以帮助确保每个应用程序具有足够的资源同时最大限度地降低成本。