一个电子商务应用程序接收并处理订单,然后将订单数据存储在 Amazon DynamoDB 中。流量是不稳定的,但在促销活动期间可能会激增;系统必须能够扩展并以最小的延迟处理订单。哪种设计是接收和处理订单最可靠、最简单、高可用且松耦合的方式?
选择一个答案
点击一个选项来检查您的答案。
正确答案: 将订单接收到 Amazon SQS 队列中,并调用 AWS Lambda 函数来处理它们。.
为什么这是答案
将订单接收到 Amazon SQS 队列中,并调用 AWS Lambda 函数来处理它们,是最佳选择。SQS 提供了可靠的异步消息传递,能够缓冲突发流量,确保订单不会丢失。Lambda 是一种无服务器计算服务,可以根据负载自动扩展,无需管理服务器,且按实际使用付费,非常适合处理不稳定的流量。这种组合实现了高可用性、松耦合和弹性伸缩。 将订单接收到托管在 Amazon EC2 上的数据库中,并使用 EC2 实例处理订单,需要手动管理扩展和高可用性,复杂性高。使用 AWS Step Functions 接收订单,并启动 Amazon ECS 容器来处理它们,虽然可行,但 Step Functions 主要用于协调复杂的工作流,对于简单的订单接收和处理可能过于复杂。将订单接收到 Amazon Kinesis Data Streams 中,并使用 Amazon EC2 实例处理流,Kinesis 适用于实时数据流处理,但对于简单的订单接收,SQS 通常更简单且成本效益更高,且 EC2 实例仍需手动管理。
通过考试 — 无需无休止地寻找答案
将本次考试的所有验证问题和解释集中在一处,节省数小时的准备时间。1,000+ 认证 · 20+ 语言 · 免费开始。
更快通过考试 → 无需银行卡