本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
AWS 事件分叉管道用例示例
以下场景描述了一个使用 Event Fork Pipelines AWS 的事件驱动型无服务器电子商务应用程序。您可以在中使用此示例电子商务应用程序
该电子商务应用程序通过Gate API way RESTful API 托管并由该 AWS Lambda 功能提供支持的买家订单CheckoutApiBackendFunction
。此函数将所有收到的订单发布到名为的 Amazon SNS 主题,CheckoutEventsTopic
该主题反过来又会将订单分散到四个不同的渠道。
第一个管道是由电子商务应用程序的拥有者设计和实现的常规结算处理管道。该管道具有用于缓冲所有已收到订单的 Amazon SQS 队列CheckoutQueue
、一个名为CheckoutFunction
的 AWS Lambda 函数(用于轮询队列以处理这些订单)以及用于安全保存所有已下订单的 DynamoDB CheckoutTable
表。
应用 AWS 事件分叉管道
电子商务应用程序的组件处理核心业务逻辑。但是,电子商务应用程序拥有者还需满足:
-
合规性 - 安全的、压缩的静态加密备份,清理敏感信息
-
弹性 - 在执行过程中断的情况下重播最近的订单
-
可搜索性 - 对已下订单运行分析并生成指标
应用程序所有者无需实现此事件处理逻辑,而是可以订阅 E AWS vent Fork Pipelines 到 CheckoutEventsTopic
Amazon SNS 主题
-
事件存储与备份管道配置为转换数据以删除信用卡信息、缓冲数据 60 秒、使用数据进行压缩GZIP,然后使用 Amazon S3 的默认客户托管密钥对其进行加密。此密钥由 () 管理 AWS 并由 AWS Key Management Service (AWS KMS) 提供支持。
有关更多信息,请参阅《亚马逊数据 Firehose 开发者指南》中的 “为目的地选择亚马逊 S3”、“亚马逊数据 Firehos e 数据转换” 和 “配置设置”。
-
为事件搜索与分析管道配置了一个 30 秒的索引重试持续时间、一个用于存储无法在搜索域中编制索引的订单的存储桶和一个用来限制已编制索引的订单集的筛选策略。
有关更多信息,请参阅 Amazon Data Firehose 开发者指南中的为您的目的地选择 OpenSearch 服务。
-
事件重播管道使用由电子商务应用程序所有者设计和实施的常规订单处理管道的 Amazon SQS 队列部分进行配置。
有关更多信息,请参阅队列名称和 URL Amazon 简单队列服务开发者指南。
以下JSON筛选策略是在事件搜索和分析管道的配置中设置的。它仅匹配总金额为 100 美元或更多的传入订单。有关更多信息,请参阅 亚马逊SNS邮件过滤。
{
"amount": [{ "numeric": [ ">=", 100 ] }]
}
使用 E AWS vent Fork Pipelines 模式,电子商务应用程序所有者可以避免开发开销,这种开销通常是在为事件处理编写非微分逻辑之后出现的。相反,她可以直接将 AWS 事件分叉管道部署 AWS Serverless Application Repository 到她身上 AWS 账户。