使用 Eventarc 创建事件驱动型架构

您可以使用 Eventarc 和 Firestore 构建事件驱动型架构。 适用于 Eventarc 的 Firestore 触发器根据数据库中特定文档的更改生成事件。触发器可以将事件路由到支持的目的地

Eventarc 提供了一种标准化解决方案,用于管理分离的微服务之间的状态更改流,称为“事件”。触发后,Eventarc 会将这些事件路由到各种目的地,同时为您管理传递、安全、授权、可观测性和错误处理。

预览版限制

以下限制适用于此功能的预览:

Eventarc 和 Firestore 位置

Eventarc 不支持适用于 Firestore 事件触发器的多区域位置,但您仍然可以为多区域位置中的 Firestore 数据库创建触发器。Eventarc 将 Firestore 多区域位置映射到以下 Eventarc 区域:

Firestore 多区域 Eventarc 区域
nam5 us-central1
eur3 europe-west4

Cloud Functions(第 2 代)与第 1 代之间的区别

Cloud Functions (第 2 代)会为所有运行时使用 Eventarc 事件。以前,Cloud Functions(第 1 代)仅为部分运行时使用 Eventarc 事件。Eventarc 事件与 Cloud Functions(第 1 代)存在以下差异。

  • 适用于 Eventarc 的 Firestore 触发器还支持 Cloud Functions 之外的其他目标。您可以将 CloudEvents 路由到多个目标,包括但不限于 Cloud Run、GKE 和 Workflows。

  • 适用于 Eventarc 的 Firestore 触发器在数据库写入操作开始时检索触发器定义,并使用该定义来确定 Firestore 是否应发出事件。写入操作不会考虑运行期间可能发生的触发器定义发生的任何更改。

    Cloud Functions(第 1 代)会在数据库写入评估期间检索触发器定义,并且在评估期间更改触发器可能会影响 Firestore 是否发出事件。

后续步骤