Q10 — AWS SAA-C03 第17章
第 10/89 题 | ← 返回第17章
Q1310. 一家公司允许用户通过其网站上传和存储照片。该网站的用户遍布全球。所有用户上传的图片都存储在集中式的 Amazon S3 存储桶中。该公司希望提高所有用户通过网站上传照片的速度。解决方案架构师应该推荐什么方案来满足这些要求?
- A. 创建 Amazon CloudFront 分发。使用 Amazon S3 标准存储类来存储文件。
- B. 创建 Amazon CloudFront 分发。配置分发设置和源。
- C. 在 S3 存储桶上配置 S3 传输加速。使用标准的 S3 端点上传文件。
- D. 在 S3 存储桶上配置 S3 传输加速。使用 S3 加速端点上传文件。 ✓
正确答案: D. 在 S3 存储桶上配置 S3 传输加速。使用 S3 加速端点上传文件。
解析
为了优化全球用户的照片上传速度,最佳解决方案是:D. 在 S3 存储桶上配置 S3 传输加速。使用 S3 加速端点上传文件。为什么选项 D 正确:S3 传输加速专为加速地理位置分散的用户上传/下载而设计,利用 AWS 全球分布式边缘节点(类似于 CloudFront,但针对大数据传输进行了优化)。它使用边缘节点和 S3 存储桶之间的优化网络路径(AWS 主干网),与直接上传相比,可降低延迟并提高吞吐量。需要启用 S3 存储桶的传输加速功能,并将上传端点更新为加速后的 URL(例如,bucketname.s3-accelerate.amazonaws.com)。绩效优势由于网络跳数减少,远距离地区的用户(例如,亚洲用户上传到美国存储桶的用户)会发现速度显著提高(通常快 50-70%)。非常适合大型文件(照片/视频)和高并发上传(例如,数千用户同时上传)。成本效益按数据传输量定价(例如,0.04?加速传输每 GB 收费 0.08 美元),这通常可以通过用户生成内容的性能提升来证明是合理的。除非还需要缓存,否则无需额外的服务(例如 CloudFront 分发)。其他选项为何错误:A. CloudFront + S3 标准CloudFront 通过在边缘位置缓存内容来提高下载速度,但它不会加速上传到 S3 的速度。上传的内容仍然直接发送到 S3 存储桶,这可能会给全球用户带来延迟。B. 具有自定义源设置的 CloudFront与方案 A 类似,CloudFront 也未针对上传加速进行优化。配置源站设置(例如 TTL)并不能解决上传延迟的核心问题。C. S3 传输加速 + 标准终点启用传输加速功能是正确的,但使用标准 S3 端点(例如 bucketname.s3.amazonaws.com)会绕过加速功能。必须使用加速端点(选项 D)。方案D的实施步骤:启用传输加速在 S3 控制台中,导航至存储桶属性,启用传输加速。注意:所有区域均支持传输加速,但美国标准区域 (us-east-1) 或欧盟区域(爱尔兰、eu-west-1)的存储桶通常性能最佳。更新上传端点修改网站的上传逻辑,使其使用加速端点(例如,将 URL 中的 s3.amazonaws.com 替换为 s3-accelerate.amazonaws.com)。例子:纯文本标准端点:https://my-bucket.s3.amazonaws.com/photos/ 加速端点:https://my-bucket.s3-accelerate.amazonaws.com/photos/ 测试性能使用 curl 或 AWS CLI 等工具测量不同区域的上传速度:狂欢# 测试加速上传(替换为您的存储桶和文件) aws s3 cp local-file.jpg s3://my-bucket/photos/ --endpoint-url https://s3-accelerate.amazonaws.com 与标准上传进行比较以验证改进。何时考虑替代方案:如果下载也需要加速:使用 CloudFront + S3(选项 A)在边缘位置缓存经常访问的内容。对于非常小的文件:传输加速可能不值得付出成本(对于小于 1 MB 的文件,效率提升微乎其微)。结论:选项 D 是加速全球照片上传到 S3 的最直接、最有效的解决方案,它利用 AWS 优化的网络基础设施来最大限度地减少延迟。