一家公司在 Amazon EC2 实例上运行分析软件,该软件处理上传到 Amazon S3 的数据作业。用户报告一些提交的数据未被处理。Amazon CloudWatch 显示 EC2 CPU 利用率持续达到或接近 100%。该公司希望根据用户负载提高性能和可扩展性。解决方案架构师应该怎么做?
选择一个答案
点击一个选项来检查您的答案。
正确答案: 将传入请求路由到 Amazon Simple Queue Service (Amazon SQS)。根据队列大小配置 EC2 Auto Scaling 组。更新软件以从队列中读取数据。.
为什么这是答案
正确答案通过引入 Amazon SQS 队列来解耦数据提交和处理,并利用 Auto Scaling 组根据队列大小动态调整 EC2 实例数量,从而解决了性能瓶颈和可扩展性问题。当 CPU 利用率持续接近 100% 时,这表明单个实例无法处理工作负载。 其他选项的问题: 创建实例副本并放置在 Application Load Balancer 后面:这有助于分发传入请求,但如果每个实例仍然处理整个数据作业,并且作业本身是 CPU 密集型的,那么瓶颈可能依然存在。它没有解决数据处理的异步性和可扩展性问题。 为 Amazon S3 创建一个 S3 VPC endpoint:这可以提高 S3 访问的安全性或降低数据传输成本,但与 CPU 利用率高和数据处理瓶颈无关。 停止 EC2 实例并修改实例类型:这可以暂时解决当前的工作负载问题,但不是一个可扩展的解决方案。随着用户负载的增加,可能需要再次手动升级实例,无法自动适应需求变化。
通过考试 — 无需无休止地寻找答案
将本次考试的所有验证问题和解释集中在一处,节省数小时的准备时间。1,000+ 认证 · 20+ 语言 · 免费开始。
更快通过考试 → 无需银行卡