Q32 — AWS SAA-C03 第15章

第 32/100 题 | ← 返回第15章

Q1132. 一家公司运营一个网站,该网站使用 Auto Scaling 组中的多个 Amazon EC2 实例提供静态和动态内容。该公司使用 PHP 开发动态内容。当前架构包含一个应用程序负载均衡器 (ALB),用于将流量定向到 Auto Scaling 组中的实例。用户报告称,随着网站用户数量的增加,网站性能正在下降。该公司需要提升网站的性能。该公司创建了一个 Amazon CloudFront 分配来提供内容,并将 Amazon S3 存储桶设置为源站。哪些额外步骤可以满足这些要求?

正确答案: B. 将静态内容复制到 S3 存储桶。将现有的 ALB 配置为第二个源,以提供动态内容。

解析

为了在使用 Amazon CloudFront 和 S3 存储桶提供内容时提高网站的性能,最好的附加步骤是:B. 将静态内容复制到 S3 存储桶。将现有的 ALB 配置为第二个源,以提供动态内容。解释:S3 中的静态内容:通过将静态内容(如图像、CSS、JavaScript)复制到 S3 存储桶,您可以利用 CloudFront 来缓存并将这些内容传送到更靠近用户的地方,从而减少延迟并缩短加载时间。通过 ALB 传输动态内容:将现有的应用程序负载均衡器 (ALB) 配置为第二个源站,允许 CloudFront 将动态内容(由您的 PHP 应用程序生成)的请求路由到 ALB。此设置保留了负载均衡的优势,同时优化了静态内容的交付。为什么其他选择不适合:A.将动态内容迁移到 CloudFront 函数并不合适,因为 CloudFront 函数旨在用于轻量级请求/响应转换,而不是用于提供后端应用程序生成的动态内容。C:虽然使用 Lambda@Edge 可以优化动态内容交付,但它会增加复杂性,如果 ALB 已经能够有效处理动态请求,则可能没有必要使用 Lambda@Edge。如果配置不当,这还可能导致延迟。D:将静态和动态内容同时复制到 S3 存储桶并不实际,因为动态内容必须由在 EC2 实例上运行的应用程序生成。S3 并非为动态内容生成而设计的。因此,选项 B 提供了增强网站性能同时有效处理静态和动态内容的最佳方法。