Q19 — AWS SAA-C03 第14章

第 19/100 题 | ← 返回第14章

Q1019.一家公司正在 AWS 上开发机器学习 (ML) 模型.该公司正在将 ML 模型开发为独立的微服务.微服务在启动时从 Amazon S3 获取大约 1 GB 的模型数据并将数据加载到内存中.用户通过异步 API 访问 ML 模型.用户可以发送一个请求或一批请求.该公司为数百名用户提供机器学习模型.这些模型的使用模式不规律.有些模型几天或几周都没有使用.其他模型一次会收到数千个请求.哪种解决方案可以满足这些要求?

正确答案: D. 将 API 中的请求直接发送到 Amazon Simple Queue Service (Amazon SQS) 队列.将 ML 模型部署为从队列读取数据的 Amazon Elastic Container Service (Amazon ECS) 服务.使用 Amazon ECS 的自动扩展功能根据 SQS 队列的大小扩展集群容量和服务数量.

解析

为了满足将机器学习 (ML) 模型开发为具有不规则使用模式的独立微服务的要求以及高效扩展和处理请求的需求,最好的解决方案是:D. 将 API 中的请求直接发送到 Amazon Simple Queue Service (Amazon SQS) 队列.将 ML 模型部署为从队列读取数据的 Amazon Elastic Container Service (Amazon ECS) 服务.使用 Amazon ECS 的自动扩展功能根据 SQS 队列的大小扩展集群容量和服务数量.### 解释:\ 1. 异步处理:- 使用 SQS 可以将请求处理过程与 ML 模型执行分离.这有利于处理突发流量和不规则使用模式,因为请求可以在容量可用时排队和处理.\ 2. 用于容器化服务的 ECS:- 将 ML 模型部署为 ECS 服务可以更好地管理资源和扩展.ECS 可以高效处理容器化应用程序,使公司能够独立管理不同的模型.\ 3. 自动缩放:- 根据 SQS 队列大小自动扩展,使系统能够根据需求动态调整资源.当队列中的请求增多时,ECS 可以增加服务实例数量以有效处理负载,并在活动较少时缩减.\ 4. 处理不规则使用模式:- 考虑到某些模型可能几天或几周都不会使用,该解决方案允许公司在需要时仅部署必要的资源,从而优化成本.其他选项的评估:A. 将 API 请求引导至网络负载均衡器 (NLB):- 虽然使用 Lambda 函数可以自动扩展,但 Lambda 的最大执行时间为 15 分钟,这可能不适合需要更长处理时间的繁重 ML 工作负载.此外,NLB 更适合 TCP 流量,而不是 HTTP 请求.B. 将 API 请求定向到应用程序负载均衡器 (ALB):- 此选项可能有效,但它可能无法像 SQS 那样有效地处理不规则的使用模式.虽然它提供了 HTTP 路由,但与基于队列的方法相比,它可能无法有效地管理突发请求.C. 将 API 中的请求直接放入 Amazon Simple Queue Service (Amazon SQS) 队列并使用 AWS Lambda:- 尽管 Lambda 可以自动扩展,但它可能不适合需要将大型模型加载到内存中的工作负载,因为 Lambda 存在与执行时间和内存大小相关的限制.因此,它可能不适合所有 ML 模型用例.### 结论:选项 D 为处理不规则使用模式、高效扩展和异步处理请求提供了最有效的解决方案,使其非常适合公司的机器学习微服务架构.