Q83 — AWS SAA-C03 第16章

第 83/100 题 | ← 返回第16章

Q1283. 一家公司在一组运行 Web 服务器软件的 Amazon EC2 实例上托管了一个培训网站。该公司预计一款新的培训产品将非常受欢迎,并将获得大量用户流量。该产品包含数十个培训视频,均托管在网站上。解决方案架构师必须尽量减少公司网络服务器的负载。哪种解决方案可以满足这一要求?

正确答案: C. 将视频存储在 Amazon S3 存储桶中。配置 Amazon CloudFront 分发,并将 S3 存储桶设置为源。创建源访问控制 (OAC) 以保护对 S3 存储桶的访问。

解析

正确的解决方案必须通过卸载视频传输来最大限度地减少公司 Web 服务器的负载,同时确保可扩展性、安全性和成本效益。让我们评估一下每个选项:正确答案:C。将视频存储在 Amazon S3 存储桶中。配置 Amazon CloudFront 分发,并将 S3 存储桶设置为源。创建源访问控制 (OAC) 以保护对 S3 存储桶的访问。为什么选项 C 是最好的:从 Web 服务器卸载视频传输:Amazon S3 直接存储视频,无需 Web 服务器来提供大文件。Amazon CloudFront(AWS 的 CDN)在全球边缘站点缓存视频,从而减少源站 (S3) 请求和用户延迟。增强的安全性:源访问控制 (OAC) 限制对 S3 存储桶的直接访问,确保只能通过 CloudFront 访问视频(防止公共 S3 URL)。可扩展性和成本效益:S3 可自动扩展以处理任意数量的视频请求。CloudFront 通过缓存频繁访问的视频来降低数据传输成本。无需服务器管理(与 EC2 或基于 EFS 的解决方案不同)。其他选择为何失败:A. 将视频存储在 Amazon ElastiCache (Redis OSS) 中。使用 ElastiCache API 更新 Web 服务器以提供视频。ElastiCache 的错误用例:Redis 是一个内存缓存,用于存储小型、频繁访问的数据(例如会话令牌、数据库查询)。它不适用于存储大型视频文件(成本高、存储空间有限、Blob 性能差)。B. 将视频存储在 Amazon Elastic File System (Amazon EFS) 卷中。创建用户数据脚本,将 EFS 卷挂载到 Web 服务器。Web 服务器仍提供视频服务:EFS 是一个共享文件系统,但视频仍会直接从 EC2 实例流式传输,从而增加负载。成本高于 S3 + CloudFront(EFS 按存储 + 吞吐量收费)。没有全局缓存(与 CloudFront 不同)。D. 将视频存储在 Amazon S3 存储桶中。创建 AWS Storage Gateway 和 Amazon S3 文件网关来访问 S3 存储桶。创建用户数据脚本,将 S3 文件网关挂载到 Web 服务器。不必要的复杂性和糟糕的性能:S3 文件网关适用于本地应用程序访问 S3 文件系统(例如 NFS/SMB)。将 S3 挂载到 EC2 上进行视频流传输效率低下(延迟较高,且无缓存)。CloudFront + S3 在全球视频传输方面则更具优势。主要比较:要求选项 C其他选项最小化 Web 服务器负载(S3 + CloudFront 卸载交付)(A:ElastiCache 使用错误;B:EFS 仍然使用 EC2;D:S3 文件网关效率低下)全球低延迟分发(CloudFront CDN)(A:无 CDN;B:无 CDN;D:无 CDN)安全访问视频(OAC 限制 S3 访问)(A:ElastiCache 对视频不安全;B:EFS 暴露;D:无安全控制)成本效益(S3 + CloudFront 按使用量付费)(A:ElastiCache 对于视频来说价格昂贵;B:EFS 价格昂贵;D:存储网关的过度杀伤结论:选项 C 是唯一的解决方案:将视频传输完全从 Web 服务器卸载(降低负载)。使用 CloudFront 进行全局缓存(低延迟、可扩展)。使用 OAC 保护视频(防止直接访问 S3)。避免不必要的复杂性(没有 EC2、EFS 或存储网关)。最终答案:C