Amazon EventBridge 是一种无服务器事件总线服务,使用它可以轻松地将应用程序与来自各种来源的数据相连接,构建松耦合和分布式的事件驱动型架构。用户无需编写代码即可实时访问 AWS 服务、用户自己的应用程序以及软件即服务(SaaS)应用程序中的数据变化。
1. 事件总线
Amazon EventBridge 的事件总线是一个接收事件并将其传送到零个或多个目标的路由器。
它非常适合将事件从多个源路由到多个目标,支持在将事件传送到目标之前进行事件转换。
2. 管道
Amazon EventBridge 管道适用于点对点集成,每个管道接收来自单一来源的事件,并处理和传送到单一目标。管道支持在传送到目标之前对事件进行高级转换和富集。管道和事件总线经常配合使用,例如,创建一个管道将事件发送至事件总线,再由事件总线将事件发送到多个目标。
3. 规则与路由
用户可以设置路由规则来确定发送数据的目的地,以便构建能够实时响应所有数据源的应用程序架构。规则可以筛选事件,只将符合条件的事件路由到指定的目标。
4. 集成 AWS 服务
Amazon EventBridge 可以将 AWS 服务(如 DynamoDB、S3、EC2 等)产生的事件路由到目标服务(如 Lambda、SNS、Kinesis 等),实现服务的自动化联动。
Amazon EventBridge 的核心组件包括,事件源、事件规则和目标这三个。事件源是事件的生成者,可以是 AWS 服务(如 S3、DynamoDB)、自定义应用程序或第三方 SaaS 应用程序。当事件源产生事件时,EventBridge 会捕获这些事件。
事件规则定义了触发事件的条件。用户可以根据需要设置规则,指定事件源、事件类型、事件详细信息等条件。当捕获到的事件与规则匹配时,EventBridge 会执行规则中定义的操作。
目标是事件的接收者,可以是 AWS 服务(如 Lambda 函数、Kinesis 数据流)或 SaaS 应用程序。EventBridge 会将匹配规则的事件路由到指定的目标,以便目标服务对事件进行处理。
通过这种机制,EventBridge 能够实现事件的实时捕获、路由和处理,帮助用户构建松耦合和分布式的事件驱动型架构,提高应用程序的敏捷性和可扩展性。