本文介绍事件总线EventBridge使用过程中遇到的常用名词的基本概念和简要描述。

CloudEvents 1.0

用标准方式描述事件数据的开源规范,旨在简化事件声明以及跨服务、跨平台的消息投递。

以下是CloudEvents 1.0中涉及的术语。更多信息,请参见CloudEvents 1.0

事件发生(Occurrence)
在软件系统运行期间采集的事件动态。事件发生的可能原因是收到系统发出的信号或者系统正在监测的信号,或者状态或时间的变化等。例如,电池电量不足或者虚拟机即将按计划重启时,设备可能会进入报警状态。
生产者(Producer)
一个特定的实例、过程或设备。生产者可以生成描述CloudEvent的数据结构。
消费者(Consumer)
接收事件并对事件执行操作。消费者通过内容和数据执行某些逻辑生成新的事件。
中间件(Intermediary)
接收包含事件内容的消息,并将事件转发到下一个接收者。下一个接收者可能是消费者,也可能是另一个中间件。中间件的典型任务就是根据内容里的信息将事件路由到消费者。
内容(Context)
工具和应用程序代码可以通过内容里的信息来标识事件与系统层面的关系或者事件或其他事件的关系。
数据(Data)
事件发生的特定领域信息,包括事件发生的相关信息、变更数据的详细说明或更多其他信息。
事件格式(Event Format)
指定如何将CloudEvent序列化为字节格式。支持独立运行的事件格式,例如JSON格式,能独立于任何协议或存储介质进行序列化。协议绑定可以定义依赖于协议的格式。
消息(Message)
事件通过消息从事件源传输到事件目标。
  • 结构化模式消息

    一种通过独立事件格式对事件进行完全编码的消息,事件数据存储在消息体中。

  • 二进制模式消息

    一种事件属性存储在消息元数据中的消息,事件数据存储在消息体中。

事件驱动架构(Event Driven Architecture,EDA)

您可以从以下角度来理解事件驱动架构:

  • 一种侧重于以生成或消费为基础的异步通信的架构模式。这主要对照于传统的基于线程的同步系统。
  • 一种以事件为核心,围绕事件产生、发现、消费以及响应的架构模式。

事件(Event)

状态变化的数据记录。

事件源(Event Source)

事件的来源,负责生产事件。事件源包括以下类型:

  • 阿里云服务:作为事件源与事件总线EventBridge对接的其他阿里云服务。
    说明 事件总线EventBridge支持的作为事件源接入的阿里云服务,请参见事件源
  • 自定义应用:您自己的应用程序。

事件总线(EventBus)

负责接收来自事件源的事件。事件总线包括以下类型:
  • 云服务专用总线:一个无需创建且不可修改的内置事件总线,用于接收您的阿里云服务的事件。阿里云服务的事件只能发布到云服务专用总线。
  • 自定义总线:需要您自行创建并管理的事件总线,用于接收您自己的应用程序的事件。您自己的应用程序的事件只能发布到自定义总线。

事件规则(Event Rule)

用于监控特定类型的事件。当发生匹配事件时,事件会被路由到与事件规则关联的事件目标。规则可以与一个或多个事件目标关联。事件规则包括:

事件模式(EventPattern)

对事件进行过滤的模块。事件模式支持对CloudEvents包含data在内的所有字段进行过滤。事件模式采用JSON格式进行描述。事件模式包括以下类型:

  • 阿里云服务专用事件模式:通过预定义的阿里云服务事件模式模板快速定义事件模式,适用于使用简单匹配规则从云服务专用总线过滤事件的场景。
    说明 如需使用复杂匹配规则从云服务专用总线过滤事件,您可以先使用阿里云服务专用事件模式的预定义模板快速定义事件模式,然后选择自定义事件模式并根据事件模式支持的匹配规则进一步修改。
  • 自定义事件模式:根据事件模式支持的匹配规则自定义事件模式,适用于使用复杂匹配规则从云服务专用总线或自定义总线过滤事件的场景。

事件转换器(Event Transformer)

对事件内容进行转换,在事件被路由到事件目标前转换事件内容。事件转换器支持以下类型:

  • 完整事件:将全部的事件内容路由到目标。
  • 部分事件:通过JSONPath提取事件中的数据,将指定的事件内容路由到目标。
  • 常量:不管事件内容是什么,都将常量路由到目标。
  • 模板:自定义一个模板并定义模板里需要的变量,通过JSONPath提取事件中的数据,按照模板定义的形式进行转换。

事件目标(Event Target)

事件的处理终端,负责消费事件。事件目标包括以下类型:
  • 阿里云服务:作为事件目标与事件总线EventBridge对接的其他阿里云服务。
    说明 事件总线EventBridge支持的阿里云服务事件目标,请参见事件目标
  • HTTP网关:您自己的应用程序的HTTP网关。

连接器(Connector)

用于从特定事件源主动拉取事件并将事件推送到事件总线EventBridge的自定义总线。