Q98 — AWS SAA-C03 第16章

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

Q1298. 一家公司在 AWS 上运行一个无服务器应用程序。该应用程序包含多个 AWS Lambda 函数、Amazon API Gateway REST API 和其他资源。该应用程序每天的流量水平各不相同,高峰时段出现在工作时间内。该公司希望在保持高性能的同时优化应用程序的成本。哪种解决方案能够满足这些要求?

正确答案: C. 为 Lambda 函数使用预置并发。使用 AWS Compute Optimizer 的建议来优化内存设置。使用 AWS Cost Explorer 来监控成本。

解析

对于 AWS 上流量波动较大(高峰时段在业务高峰期)的无服务器应用程序,目标是在保持高性能的同时优化成本。最佳解决方案是选项 C:为 Lambda 函数使用预置并发,利用 AWS Compute Optimizer 进行内存调优,并使用 AWS Cost Explorer 监控成本。原因如下:为什么选项C是最优解为 Lambda 预置并发消除冷启动:通过在高峰时段(例如上午 9 点或下午 9 点)预先初始化 Lambda 实例,即使在流量突然激增的情况下,也能确保低于 100 毫秒的延迟。对于可预测的峰值,成本效益更高:与始终在线的解决方案(例如 Fargate)不同,您只需为预热的实例付费,避免过度配置。例如:一款使用预置并发的零售应用程序在销售活动期间将 P99 延迟降低了 90%,而没有增加成本。AWS 内存调优计算优化器合理调整 Lambda 函数内存:分析历史性能以推荐最佳内存(例如,1792MB 而不是 128MB),从而线性扩展 CPU 分配。平衡成本/性能:内存增加 3 倍可能会将执行时间缩短 5 倍,从而降低总成本(例如,每100毫秒0.00001667vs。0.00000417(用于更快的函数)。自动推荐:减少手动反复试验的调整。AWS Cost Explorer 监控按函数跟踪 Lambda 支出:识别主要成本驱动因素(例如,优化不佳的 API 处理程序消耗了 40% 的预算)。设置预算提醒:当支出超过阈值时(例如,高峰期每天超过 100 美元),系统会通知您。预测趋势:帮助您提前规划季节性流量高峰期(例如,节假日)的并发需求。其他方案为何不足选项A:并发资源不足,导致高峰期出现不可预测的冷启动。仅靠计算优化器无法解决因扩展延迟导致的延迟峰值。选项B:AWS Auto Scaling 与 Lambda 无关(它会自动扩展)。Fargate 会给无服务器工作负载增加不必要的复杂性,从而增加成本(例如,每个 vCPU 每小时 0.04048 美元,而 Lambda 采用的是按需付费模式)。选项D:AWS X-Ray 是被动的,而不是主动的——它只能在瓶颈发生后识别它们,但无法阻止冷启动。对于无服务器应用程序来说,Fargate 过于复杂,需要容器管理和更高的运维开销。实施步骤设置预置并发:使用 AWS Lambda 控制台或 CLI 配置并发级别(例如,在业务时间对高流量 API 配置 500 个实例)。通过 CloudWatch Events 安排激活/停用(例如,上午 8 点开启,晚上 8 点关闭)。应用计算优化器建议:导航至计算优化器 > Lambda 建议,并调整高成本函数的内存设置。通过负载测试进行验证(例如,使用 AWS Lambda Power Tuning 工具)。使用成本浏览器进行监控:创建按 Lambda 服务和函数名称筛选的成本和使用情况报告。设置预算提醒,提醒金额为每日峰值支出阈值的 80%。预期结果性能:峰值期间 P99 延迟低于 200 毫秒(未配置并发时为 2 秒)。成本:由于内存优化和减少了因限流而导致的无效调用,Lambda 函数的开销降低了 20%。可扩展性:无需人工干预即可应对 10 倍流量激增。这种方法直接解决了在无服务器架构中,工作负载可变的情况下,如何平衡成本和性能的核心挑战。