本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
什么是 EventBridge 自定义事件总线?
EventBridge 自定义事件总线是一种无服务器事件总线,由一个团队运行,许多团队和账户使用。您可以使用PutEvents或向其发布事件PutRawEvents。它会将每个事件路由到过滤器与之匹配的订阅者,并在您在总线上设置的保留期内保留每个事件的副本。您可以通过 AWS Resource Access Manager (AWS RAM) 与其他账户共享公交车,每个账户都有自己的订阅者。公交车所有者不代表他们写路线。
在 EventBridge 控制台中,该总线的总线类型显示为自定义事件总线,对于使用规则和目标的总线,总线类型显示为自定义事件总线-经典。有关 CLI、软件开发工具包和 IAM 的名称,请参阅自定义事件总线的名称、终端节点和 IAM 权限。
主要功能
-
Cross-account 通过共享 AWS RAM,具有四个托管权限,允许消费者帐户发布、订阅、附加事件源或全部三个。
-
将每场活动保留1至365天,设定在公交车上。
-
每个订阅者在活动组内订购(FIFO)交付。
-
每个订阅者的起始位置,因此新订阅者可以读取保留的事件,而暂停的订阅者可以毫无损失地恢复。
-
在 5 分钟内按内容或您提供的密钥在发布时删除重复数据。
-
PutRawEvents用于 JSON、Avro、Protobuf 或原始字节,使用架构注册表反序列化进行过滤。 -
通用目标,可直接调用任何改变状态 AWS 的 API 操作,同时调用定制目标。
资源
你使用三种资源。
- 事件总线
-
事件总线接收您使用
PutEvents或发布的事件PutRawEvents,将其路由给订阅者并保留它们。您可以在总线上设置保留期、可选 AWS KMS 密钥和可选的跨账户共享。有关公共汽车经过的州,请参阅总线状态及其允许的内容。 - 订阅者
-
订阅者使用过滤器命名你想要的事件,以及接收这些事件的目标。你可以用它来创建
CreateSubscriber。它监视一根总线,保留与其过滤器匹配的事件,选择性地转换每条总线,然后将其传送到一个目标。要向多个目标发送事件,请为每个目标创建一个订阅者。 - 事件源
-
事件源将来自 AWS 服务或软件即服务 (SaaS) 合作伙伴的事件提取到总线上。您可以使用创建它
CreateEventSource,命名起点和目标总线,然后为您 EventBridge 移动事件。
例如arn:aws:events:us-east-1:111122223333:event-busv2/orders/EXAMPLE1234567890abcdef,公交车和订阅者亚马逊资源名称 (ARN) 以 EventBridge生成的标识符结尾。存储完整的 ARN 而不是名称。如果您删除了一条总线并创建了另一条同名的总线,则新总线将使用不同的标识符。
一辆巴士,多个账户
要让另一个账户使用您的总线,请将其共享 AWS RAM 并附加其中一个托管权限,例如AWSRAMEventBridgeEventBusV2SubscribeOnly让该账户关联订阅者。然后,该账户在您的公交车上创建并拥有自己的订阅者:它只会在列出订阅者时看到他们,而您会看到所有订阅者。消费者账户无法更改或删除公交车,您可以使用它撤回其任何订阅者RevokeResource。有关权限、资源策略和撤销的信息,请参阅与其他账号共享自定义事件总线。
自定义事件总线如何路由和保留事件
公交车会在每个事件到达时将其路由给匹配的订阅者。总线还会在您配置的天数内保留事件。保留使两种功能成为可能。
-
订阅者可以从过去的某个点开始。这就是您重播保留事件的方式,以及您今天创建的订阅者如何读取昨天发布的事件。
-
订阅者可以在不丢失事件的情况下暂停然后恢复。
有关更多信息,请参阅选择保留期和向订阅者重播保留的事件。
自定义事件总线与自定义事件总线有何不同-Classic
| 能力 | 自定义事件总线 | 自定义事件总线-经典版 |
|---|---|---|
| Cross-account 使用 | 与他人共享巴士 AWS RAM。每个消费者账户在公交车上创建并拥有其订阅者。 | 通过总线资源策略授予其他帐户,或将事件转发到另一个账户中的总线。 |
| 保留 | 内置在总线中,时间由您设定。 | 未保留。要保存活动,请添加档案。 |
| 排序 | 按订阅者在事件组内交付 FIFO。 | 不可用。 |
| 重放 | 订阅者在保留事件中的起始位置。 | 从档案中重播。 |
| 发布 API | PutEvents适用于 JSON 和PutRawEvents任何格式,包括 Avro 和 Protobuf。 |
PutEvents用于 JSON。 |
| 重复数据删除 | 在发布时,按内容或您提供的密钥进行排序。 | 不可用。 |
| 每个路由资源的目标 | 每个订阅者一个目标。 | 每条规则最多五个目标。 |
使用案例
-
平台团队运行一
orders辆公共汽车,并将其与配送、计费和分析团队的账户共享。每个团队都有自己的订阅者;平台团队从不为他们编辑路线。 -
支付服务以
EventGroupId每个账号进行发布,FIFO 订阅者按顺序将每个账户的事件传送到队列中。 -
创建了一个新的分析消费者,其起始位置可以追溯到30天前,并在赶上实时流量之前读取一个月的保留事件。
定价
您需要为发布的活动、向订阅者交付的费用和留存率付费。有关费率,请参阅亚马逊 EventBridge定价
后续步骤
-
了解在 CLI、软件开发工具包和 IAM 中使用哪些名称:自定义事件总线的名称、终端节点和 IAM 权限。
-
发布您的第一个活动:将事件发布到自定义事件总线.
-
创建可以提供服务的订阅者:在自定义事件总线上订阅事件.